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