Mysql相关函数使用和总结(cast、convert)
一、类型转换
1、获取一个类型的值,并产生另一个类型的值,CAST()和CONVERT()函数。
用法:
CAST(value as type);
CONVERT(value, type);
解释:CAST(xxx AS 类型), CONVERT(xxx,类型),第一个类型为要转换成为的类型,第二个类型为由什么类型转换。
注:可以转换的类型是有限的,一下其中任何一个:
- 二进制,同带binary前缀的效果 : BINARY
- 字符型,可带参数 : CHAR()
- 日期 : DATE
- 时间: TIME
- 日期时间型 : DATETIME
- 浮点数 : DECIMAL
- 整数 : SIGNED
- 无符号整数 : UNSIGNED
例子1:
mysql> SELECT CONVERT('23',SIGNED); +----------------------+ | CONVERT('23',SIGNED) | +----------------------+ | 23 | +----------------------+ 1 row in set
例子2:
mysql> SELECT CAST('125e342.83' AS signed); +------------------------------+ | CAST('125e342.83' AS signed) | +------------------------------+ | 125 | +------------------------------+ 1 row in set
例子3:
mysql> SELECT CAST('3.35' AS signed); +------------------------+ | CAST('3.35' AS signed) | +------------------------+ | 3 | +------------------------+ 1 row in set
二、编码格式转换
mysql的conv的用法,用来将字符转换进制的
用法:conv(hex(‘字符串’),原有编码,转换编码)
例子:conv(hex('a'),16,10) 例如将a转成ASCII码(换个说法就是将16进制的a换成10进制)
解释:第一个参数是要转换的字符,第二个就是要转换的字符的进制,第三个参数 就是转换成的进制,就是说第二个参数要和第一个参数的类型一致,第三个参数就是想 要得到的进制