Mysql CONVERT函数的具体使用

作者:山茶花开时。 时间:2024-01-27 03:52:12 

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

1.转换指定字符集

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

语法结构

CONVERT(expr USING transcoding_name)

expr: 要转换的值

transcoding_name: 要转换成的字符集 

-- utf8mb4
SELECT CHARSET('ABC');
-- gbk
SELECT CHARSET(CONVERT('ABC' USING gbk));

2.转换指定数据类型

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

语法结构

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数据类型

-- 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数据类型

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

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

-- 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数据类型 

-- '150'
SELECT CONVERT(150, CHAR);
-- 出错Error
SELECT CONCAT('Hello World',437));
-- 'Hello World437'
SELECT CONCAT('Hello World',CONVERT(437, CHAR));

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

-- 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数据类型

-- 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数据类型 

-- 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函数

来源:https://blog.csdn.net/Hudas/article/details/124969835

标签:Mysql,CONVERT
0
投稿

猜你喜欢

  • Python 查看文件的编码格式方法

    2021-11-01 10:50:39
  • 布同自制Python函数帮助查询小工具

    2021-09-01 19:38:35
  • Python 中的range(),以及列表切片方法

    2022-04-22 16:22:53
  • 设计师挖掘用户需求浅谈

    2009-10-25 13:24:00
  • mysql实现事务的提交和回滚实例

    2024-01-23 04:13:12
  • vue-quill-editor插入图片路径太长问题解决方法

    2024-05-29 22:46:29
  • python设置代理和添加镜像源的方法

    2022-12-03 10:26:39
  • Python3爬虫爬取百姓网列表并保存为json功能示例【基于request、lxml和json模块】

    2023-12-16 21:28:44
  • python作图基础之plt.contour实例详解

    2023-04-05 01:05:44
  • javascript修正12个浏览器兼容问题[译]

    2009-04-23 12:19:00
  • python中__slots__节约内存的具体做法

    2023-04-10 16:28:34
  • Flask-SQLALchemy基本使用方法

    2023-07-01 23:19:16
  • jQuery打造动态渐变按钮

    2010-05-10 20:21:00
  • 基于Python检测动态物体颜色过程解析

    2022-03-20 09:07:30
  • python模块如何查看

    2021-10-26 20:08:35
  • Python 利用pydub库操作音频文件的方法

    2022-12-12 05:42:53
  • SQL+HTML+PHP 一个简单论坛网站的综合开发案例(注册、登录、注销、修改信息、留言等)

    2023-06-14 15:54:17
  • Python用list或dict字段模式读取文件的方法

    2022-07-16 18:29:07
  • Python3.5面向对象与继承图文实例详解

    2021-05-14 15:48:42
  • Python使用cn2an实现中文数字与阿拉伯数字的相互转换

    2021-07-28 23:33:51
  • asp之家 网络编程 m.aspxhome.com