在MySQL数据库中,类型转换是处理数据时经常遇到的问题。类型转换函数可以帮助我们将一种数据类型转换为另一种数据类型。以下是一些常用的MySQL类型转换函数及其用法:
1. 字符串转换函数
1.1. CAST()
- 功能:将一个表达式转换成指定的数据类型。
- 语法:
CAST(expression AS type)。 - 示例:
SELECT CAST('123' AS UNSIGNED) AS result; -- 结果为 123
1.2. CONVERT()
- 功能:将一个表达式转换成指定的字符集和转换函数。
- 语法:
CONVERT(expression USING charset)。 - 示例:
SELECT CONVERT('你好' USING gbk) AS result; -- 结果为 '你好'
2. 数值转换函数
2.1. CEILING()
- 功能:返回大于或等于表达式的最小整数。
- 语法:
CEILING(expression)。 - 示例:
SELECT CEILING(3.14) AS result; -- 结果为 4
2.2. FLOOR()
- 功能:返回小于或等于表达式的最大整数。
- 语法:
FLOOR(expression)。 - 示例:
SELECT FLOOR(3.14) AS result; -- 结果为 3
2.3. ROUND()
- 功能:返回表达式的四舍五入值。
- 语法:
ROUND(expression, digits)。 - 示例:
SELECT ROUND(3.14159, 2) AS result; -- 结果为 3.14
3. 日期和时间转换函数
3.1. CURDATE()
- 功能:返回当前日期。
- 语法:
CURDATE()。 - 示例:
SELECT CURDATE() AS result; -- 结果为当前日期
3.2. NOW()
- 功能:返回当前日期和时间。
- 语法:
NOW()。 - 示例:
SELECT NOW() AS result; -- 结果为当前日期和时间
3.3. STR_TO_DATE()
- 功能:将字符串转换为日期或时间格式。
- 语法:
STR_TO_DATE(string, format)。 - 示例:
SELECT STR_TO_DATE('2021-01-01', '%Y-%m-%d') AS result; -- 结果为 '2021-01-01'
4. 其他转换函数
4.1. CHAR()
- 功能:将整数转换为字符。
- 语法:
CHAR(integer)。 - 示例:
SELECT CHAR(65) AS result; -- 结果为 'A'
4.2. CONCAT()
- 功能:将多个字符串连接起来。
- 语法:
CONCAT(string, string, ...)。 - 示例:
SELECT CONCAT('Hello', ' ', 'World') AS result; -- 结果为 'Hello World'
这些是MySQL中一些常用的类型转换函数。在实际应用中,根据需要选择合适的函数进行数据转换,以便更好地满足需求。