MySQL 将字符串转换为数字
2024-10-19 21:29:12
转载自:https://www.cnblogs.com/xiaoleiel/p/8316508.html
在操作mysql时,经常需要将字符转换成数字,这一步虽然简单,但不常用的话也很容易忘记,现将在网上找到的方法记录如下:
1.将字符的数字转成数字,比如'0'转成0可以直接用加法来实现
例如:将pony表中的d 进行排序,可d的定义为varchar,可以这样解决
select * from pony order by (d+0)
2.在进行ifnull处理时,比如 ifnull(a/b,'0') 这样就会导致 a/b成了字符串,因此需要把'0'改成0,即可解决此困扰
3.比较数字和varchar时,比如a=11,b="11ddddd";
则 select 11="11ddddd"相等
若绝对比较可以这样:
select binary 11 =binary "11ddddd"
4.字符集转换 : CONVERT(xxx USING gb2312)
类型转换和SQL Server一样,就是类型参数有点点不同 : CAST(xxx AS 类型) , CONVERT(xxx,类型),类型必须用下列的类型:
可用的类型:
二进制,同带binary前缀的效果 : BINARY
字符型,可带参数 : CHAR()
日期 : DATE
时间: TIME
日期时间型 : DATETIME
浮点数 : DECIMAL
整数 : SIGNED
无符号整数 : UNSIGNED
最新文章
- 转载:Hadoop排序工具用法小结
- VB6.0编程笔记——(2)开发环境准备&;学习前导入
- Android实现图表绘制和展示
- ubuntu终端提示符@name修改
- Java - 使用 XSD 校验 XML
- VS2008编译器编译出来的文件比mingw编译的要几乎小一半
- 关于The APR based Apache Tomcat Native library警告
- Spring-data-redis操作redis知识汇总
- libpng处理png图片(二)
- Kafka水位(high watermark)与leader epoch的讨论
- php中const与define的区别
- Oracle层级询语句connect by 用法详解
- 解决.Net Core跨域问题
- 记一次wordpress安装过程中遇到的问题及解决办法
- 为小米(红米)6A解锁_ROOT_安装天下游虚拟定位教程_已亲身验证通过!附图
- cerr与cout的区别
- 每日英语:Got a Case of the Mondays? Blame the Sunday Blues
- go 数组
- Objective-C代码学习大纲(2)
- debussy与modelsim的联调设置