MySQL CONVERT() 函数将值从一种数据类型转换为另一种数据类型,或将一种字符集转换为另一种字符集。
语法
/* 将一种数据类型转换为另一种数据类型 */
CONVERT(value, type)
/* 将一种字符集转换为另一种字符集 */
CONVERT(value USING character_set)
参数
value | 必填。 指定要转换的值。 | ||||||||||||||||||||
type | 必填。 指定要转换为的数据类型。 它可以是以下之一:
| ||||||||||||||||||||
character_set | 必填。 指定要转换的字符集。 |
返回值
返回转换后的值。
转换为DATE
CONVERT() 函数可用于将值转换为 DATE 类型。例如 - 在下面的示例中,"2018-08-18"转换为 DATE 数据类型。
mysql> SELECT CONVERT('2018-08-18', DATE);
Result: '2018-08-31'
转换为 DATETIME
CONVERT()函数可用于将值转换为 DATETIME 类型。例如 - 在下面的示例中,"2018-08-18 10:38:42"被转换为 DATETIME 数据类型。
mysql> SELECT CONVERT('2018-08-18 10:38:42', DATETIME);
Result: '2018-08-18 10:38:42'
转换为 TIME
CONVERT( ) 函数可用于将值转换为 TIME 类型。例如 - 在下面的示例中,"10:38:42"被转换为 TIME 数据类型。
mysql> SELECT CONVERT('10:38:42', TIME);
Result: '10:38:42'
转换为 DECIMAL
CONVERT()函数可用于将值转换为 DECIMAL 类型。例如 - 在下面的示例中,"123.456"转换为 DECIMAL 数据类型。
mysql> SELECT CONVERT('123.456', DECIMAL(5, 2));
Result: 123.46
转换为 CHAR
可以使用 CONVERT() 函数将值转换为 CHAR 类型。例如 - 在下面的示例中,123 被转换为 CHAR 数据类型。
mysql> SELECT CONVERT(123, CHAR);
Result: '123'
转换为 NCHAR
CONVERT() 函数可用于转换NCHAR 类型的值。例如 - 在下面的示例中,123 被转换为 NCHAR 数据类型。
mysql> SELECT CONVERT(123, NCHAR);
Result: '123'
转换为 SIGNED
CONVERT() 函数可用于转换SIGNED 类型的值。例如 - 在下面的示例中,10-20 转换为 SIGNED 数据类型。
mysql> SELECT CONVERT(10-20, SIGNED);
Result: -10
转换为 UNSIGNED
可以使用 CONVERT() 函数将值转换为 UNSIGNED 类型。例如 - 在下面的示例中,10-20 被转换为 UNSIGNED 数据类型。
mysql> SELECT CONVERT(10-20, UNSIGNED);
Result: 18446744073709551606
转换为 BINARY
可以使用 CONVERT() 函数将值转换为 BINARY 类型。例如 - 在下面的示例中,123 被转换为 BINARY 数据类型。
mysql> SELECT CONVERT(123, BINARY);
Result: '123'
转换字符集
CONVERT() 函数允许您转换从一个字符集到另一个字符集的值。例如 - 在下面的示例中,"yxjc123.com"从当前字符集转换为 UTF8 字符集。
mysql> SELECT CONVERT('yxjc123.com' USING UTF8);
Result: 'yxjc123.com'
类似地,将值"yxjc123.com"转换为 latin1 字符集,可以使用以下查询:
mysql> SELECT CONVERT('yxjc123.com' USING latin1);
Result: 'yxjc123.com'