MySQL CAST函数
1. 简介
在MySQL中,CAST函数用于将一个表达式转换为指定的数据类型。
CAST(expr AS type)
其中,expr
是需要转换的表达式,type
是目标数据类型。
本文将详细介绍MySQL中的CAST函数,包括其基本用法、支持的数据类型以及示例代码。让我们一起深入了解吧!
2. 基本用法
CAST函数的基本用法很简单,只需要将要转换的表达式以及目标数据类型作为参数传入即可。下面是一些常用的数据类型转换示例:
- 将字符串转换为整数:
SELECT CAST('123' AS SIGNED);
输出:
123
-
将整数转换为字符串:
SELECT CAST(123 AS CHAR);
输出:
"123"
-
将日期字符串转换为日期类型:
SELECT CAST('2022-01-01' AS DATE);
输出:
2022-01-01
-
将浮点数转换为整数:
SELECT CAST(3.14 AS SIGNED);
输出:
3
-
将布尔值转换为整数:
SELECT CAST(TRUE AS UNSIGNED);
输出:
1
需要注意的是,如果要转换的表达式与目标数据类型不兼容,将会导致转换失败并返回错误。
3. 支持的数据类型
CAST函数支持多种数据类型的转换,包括但不限于以下类型:
- 整数类型:TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT
- 浮点数类型:FLOAT, DOUBLE, DECIMAL
- 日期与时间类型:DATE, TIME, DATETIME, TIMESTAMP
除了上述常用的数据类型之外,CAST函数还支持其他一些较为复杂的数据类型转换,如转换为二进制、JSON、ENUM等类型。具体支持的数据类型请参考MySQL官方文档。
4. 示例代码
下面将给出一些示例代码,来演示CAST函数的使用及其返回结果。
示例 1:将字符串转换为整数
SELECT CAST('100' AS SIGNED);
输出:100
示例 2:将浮点数转换为整数
SELECT CAST(3.14 AS SIGNED);
输出:3
示例 3:将日期字符串转换为日期类型
SELECT CAST('2022-01-01' AS DATE);
输出:2022-01-01
示例 4:将布尔值转换为整数
SELECT CAST(TRUE AS UNSIGNED);
输出:1
示例 5:将整数转换为字符串
SELECT CAST(123 AS CHAR);
输出:"123"
5. 总结
本文详细介绍了MySQL中的CAST函数,包括其基本用法、支持的数据类型以及示例代码。通过CAST函数,我们可以方便地将一个表达式转换为指定的数据类型,满足数据处理与分析的需求。