Mysql CONVERT函數(shù)的具體使用
CONVERT函數(shù)用于將值轉換為指定的數(shù)據(jù)類型或字符集
1.轉換指定字符集
CONVERT函數(shù)用于將字符串expr的字符集變成transcoding_name
語法結構
CONVERT(expr USING transcoding_name)
expr: 要轉換的值
transcoding_name: 要轉換成的字符集
-- utf8mb4
SELECT CHARSET('ABC');
-- gbk
SELECT CHARSET(CONVERT('ABC' USING gbk));
2.轉換指定數(shù)據(jù)類型
CONVERT函數(shù)用于將字符串expr的字符集變成transcoding_name
語法結構
CONVERT(expr,type)
expr: 要轉換的值
type: 要轉換為的數(shù)據(jù)類型
| 值 | 描述 |
| DATE | 將expr轉換成'YYYY-MM-DD'格式 |
| DATETIME | 將expr轉換成'YYYY-MM-DD HH:MM:SS'格式 |
| TIME | 將expr轉換成'HH:MM:SS'格式 |
| CHAR | 將expr轉換成CHAR(固定長度的字符串)格式 |
| SIGNED | 將expr轉換成INT(有符號的整數(shù))格式 |
| UNSIGNED | 將expr轉換成INT(無符號的整數(shù))格式 |
| DECIMAL | 將expr轉換成FLOAT(浮點數(shù))格式 |
| BINARY | 將expr轉換成二進制格式 |
示例
1.將值轉換為DATE數(shù)據(jù)類型
-- 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數(shù)據(jù)類型
-- 2022-05-25 00:00:00
SELECT CONVERT('2022-05-25', DATETIME);
3.將值轉換為TIME數(shù)據(jù)類型
-- 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數(shù)據(jù)類型
-- '150'
SELECT CONVERT(150, CHAR);
-- 出錯Error
SELECT CONCAT('Hello World',437));
-- 'Hello World437'
SELECT CONCAT('Hello World',CONVERT(437, CHAR));
5.將值轉換為SIGNED數(shù)據(jù)類型
-- 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數(shù)據(jù)類型
-- 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數(shù)據(jù)類型
-- 9
SELECT CONVERT('9.0', DECIMAL);
-- DECIMAL(數(shù)值精度,小數(shù)點保留長度)
-- DECIMAL(10,2)可以存儲最多具有8位整數(shù)和2位小數(shù)的數(shù)字
-- 精度與小數(shù)位數(shù)分別為10與2
-- 精度是總的數(shù)字位數(shù),包括小數(shù)點左邊和右邊位數(shù)的總和
-- 小數(shù)位數(shù)是小數(shù)點右邊的位數(shù)
-- 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函數(shù)也能夠實現(xiàn)數(shù)據(jù)類型轉換
到此這篇關于Mysql CONVERT函數(shù)的具體使用的文章就介紹到這了,更多相關Mysql CONVERT函數(shù)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
MySQL數(shù)據(jù)庫中外鍵(foreign?key)用法詳解
這篇文章主要給大家介紹了關于MySQL數(shù)據(jù)庫中外鍵(foreign?key)的相關資料,MySQL 外鍵約束可以用來保證表與表之間的關系完整性,文中通過代碼介紹的非常詳細,需要的朋友可以參考下2023-10-10

