服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|Access|数据库技术|

服务器之家 - 数据库 - Mysql - Mysql CONVERT函数的具体使用

Mysql CONVERT函数的具体使用

2022-08-13 09:29山茶花开时。 Mysql

本文主要介绍了Mysql CONVERT函数的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

CONVERT函数用于将值转换为指定的数据类型或字符集

1.转换指定字符集

CONVERT函数用于将字符串expr的字符集变成transcoding_name

语法结构

?
1
CONVERT(expr USING transcoding_name)

expr: 要转换的值

transcoding_name: 要转换成的字符集 

?
1
2
3
4
-- utf8mb4
SELECT CHARSET('ABC');
-- gbk
SELECT CHARSET(CONVERT('ABC' USING gbk));

2.转换指定数据类型

CONVERT函数用于将字符串expr的字符集变成transcoding_name

语法结构

?
1
CONVERT(expr,type)

expr: 要转换的值

type: 要转换为的数据类型 

type参数取值

 
描述
DATE 将expr转换成'YYYY-MM-DD'格式
DATETIME 将expr转换成'YYYY-MM-DD HH:MM:SS'格式
TIME 将expr转换成'HH:MM:SS'格式
CHAR 将expr转换成CHAR(固定长度的字符串)格式
SIGNED 将expr转换成INT(有符号的整数)格式
UNSIGNED 将expr转换成INT(无符号的整数)格式
DECIMAL 将expr转换成FLOAT(浮点数)格式
BINARY 将expr转换成二进制格式

示例

1.将值转换为DATE数据类型

?
1
2
3
4
5
6
-- 2022-05-25
SELECT CONVERT('2022-05-25', DATE);
-- 2022-05-25 17:58:48
SELECT NOW();
-- 2022-05-25
SELECT CONVERT(NOW(), DATE);

2.将值转换为DATETIME数据类型

?
1
2
-- 2022-05-25 00:00:00
SELECT CONVERT('2022-05-25', DATETIME);

3.将值转换为TIME数据类型

?
1
2
3
4
5
6
-- 14:06:10
SELECT CONVERT('14:06:10', TIME);
-- 2022-05-25 17:25:12
SELECT NOW();
-- 17:25:12
SELECT CONVERT(NOW(), TIME);

4.将值转换为CHAR数据类型 

?
1
2
3
4
5
6
-- '150'
SELECT CONVERT(150, CHAR);
-- 出错Error
SELECT CONCAT('Hello World',437));
-- 'Hello World437'
SELECT CONCAT('Hello World',CONVERT(437, CHAR));

5.将值转换为SIGNED数据类型

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
-- 5
SELECT CONVERT('5.0', SIGNED);
-- 2
SELECT (1 + CONVERT('3', SIGNED))/2;
-- -5
SELECT CONVERT(5-10, SIGNED);
-- 6
SELECT CONVERT(6.4, SIGNED);
-- -6
SELECT CONVERT(-6.4, SIGNED);
-- 7
SELECT CONVERT(6.5, SIGNED);
-- -7
SELECT CONVERT(-6.5, SIGNED);

6.将值转换为UNSIGNED数据类型

?
1
2
3
4
5
6
7
8
9
10
-- 5
SELECT CONVERT('5.0', UNSIGNED);
-- 6
SELECT CONVERT(6.4, UNSIGNED);
-- 0
SELECT CONVERT(-6.4, UNSIGNED);
-- 7
SELECT CONVERT(6.5, UNSIGNED);
-- 0
SELECT CONVERT(-6.5, UNSIGNED);

7.将值转换为DECIMAL数据类型 

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
-- 9
SELECT CONVERT('9.0', DECIMAL);
 
-- DECIMAL(数值精度,小数点保留长度)
-- DECIMAL(10,2)可以存储最多具有8位整数和2位小数的数字
-- 精度与小数位数分别为10与2
-- 精度是总的数字位数,包括小数点左边和右边位数的总和
-- 小数位数是小数点右边的位数
-- 9.50
SELECT CONVERT('9.5', DECIMAL(10,2));
-- 99999999.99
SELECT CONVERT('1234567890.123', DECIMAL(10,2));
-- 220.232
SELECT CONVERT('220.23211231', DECIMAL(10,3));
-- 220.232
SELECT CONVERT(220.23211231, DECIMAL(10,3));

CAST函数也能够实现数据类型转换 

补充资料 | CAST函数

到此这篇关于Mysql CONVERT函数的具体使用的文章就介绍到这了,更多相关Mysql CONVERT函数内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/Hudas/article/details/124969835

延伸 · 阅读

精彩推荐