CONVERT
函数说明
CONVERT()
函数将一个值转换为指定的数据类型或字符集。
语法结构
> CONVERT(value, type)
或:
> CONVERT(value USING charset)
相关参数
参数 | 说明 |
---|---|
value | 必要参数,待转化的值 |
datatype | 必要参数,目标数据类型 |
charset | 必要参数,目标字符集 |
目前,convert
可以进行如下转换:
- 数值类型之间转换,主要包括 SIGNED,UNSIGNED,FLOAT,DOUBLE 类型
- 数值类型向字符 CHAR 类型转换
- 格式为数值的字符类型向数值类型转换(负数需要转换为 SIGNED)
示例
mysql> select convert(150,char);
+-------------------+
| cast(150 as char) |
+-------------------+
| 150 |
+-------------------+
1 row in set (0.01 sec)
CREATE TABLE t1(a tinyint);
INSERT INTO t1 VALUES (127);
mysql> SELECT 1 FROM
-> (SELECT CONVERT(t2.a USING UTF8) FROM t1, t1 t2 LIMIT 1) AS s LIMIT 1;
+------+
| 1 |
+------+
| 1 |
+------+
1 row in set (0.00 sec)
限制
- 非数值的字符类型无法转化为数值类型
- 日期格式的数值类型、字符类型无法转化为 Date 类型
- Date,Datetime 类型无法转化为字符类型
- Date 与 Datetime 暂不能互相转化