在MySQL中,有几种方法可以实现数据类型之间的转换:
1. 使用CAST()/CONVERT()函数
CAST():
CAST(expr AS type)
CONVERT():
CONVERT(expr,type)
这两种函数的功能是一样的,用于数据类型之间的转换。
支持的type有:
- CHAR:转为字符类型
- DATE:转为日期类型
- SIGNED:转为有符号整数类型
- UNSIGNED:转为无符号整数类型
- …
示例:
SELECT CAST('123' AS UNSIGNED); -- 转int
SELECT CONVERT('2020-01-01', DATE); -- 转date
2. 使用强制类型转换函数
比如:
- str_to_date():将字符串转为日期类型
- date_format():将日期转为字符串
- concat():将字符串与数值连接起来转为字符串
- …
3. 使用算术运算或连接运算符
可用于将数值转换成字符串:
SELECT 'number is ' + CAST(123 AS CHAR);
4. COALESCE()函数
该函数会返回给定表达式列表中的第一个非NULL表达式。
可以将其用于强制的数据类型转换。
5. CASE WHEN THEN END 表达式
可以实现条件型的数据类型转换。
以上这些方法都是MySQL实现数据类型转换的重要手段。可以根据实际需要,选择最方便高效的转换方式。