Mysql数字类型转换函数
1、将Int 转为varchar经常用 concat函数,比如concat(8,'0') 得到字符串 '80'
2、将varchar 转为Int 用 cast(a as signed) a为varchar类型的字符串
www.2cto.com
总结:类型转换和SQL Server一样,就是类型参数有点点不同:CAST(xxx AS类型),CONVERT(xxx,类型)
可用的类型
二进制,同带binary前缀的效果 : BINARY
字符型,可带参数 : CHAR()
日期 : DATE
时间: TIME
日期时间型 : DATETIME
浮点数 : DECIMAL
整数 : SIGNED
无符号整数 : UNSIGNED
下面举几个例子:
例一
mysql> SELECT CONVERT('23',SIGNED); +----------------------+ | CONVERT('23',SIGNED) | +----------------------+ | 23 | +----------------------+ 1 row in set
例二
mysql> SELECT CAST('125e342.83' AS signed); +------------------------------+ | CAST('125e342.83' AS signed) | +------------------------------+ | 125 | +------------------------------+ 1 row in set
例三
DECLARE @dt datetime --单纯的日期 SET @dt='1900-1-2' SELECT CAST(@dt as binary(8)) --结果: 0x0000000100000000 --单纯的时间 SET @dt='00:00:01' SELECT CAST(@dt as binary(8)) --结果: 0x000000000000012C
MySQL的类型转换和SQL Server一样,就是类型参数有点点不同:CAST(xxx AS 类型) ,CONVERT(xxx,类型)。
另外:mysql对汉字排序需要转换编码方式 UTF-8 ---> gbk
convert(字段名 using 编码)