MySQL SQL 是一種強大的、開源的關系型數(shù)據(jù)庫管理系統(tǒng),其支持多種數(shù)據(jù)類型。但在實際使用中,我們有時需要將一個數(shù)據(jù)類型轉換為另一個數(shù)據(jù)類型。對于這種情況,MySQL 提供了許多數(shù)據(jù)類型轉換函數(shù),它們可以幫助我們方便地進行數(shù)據(jù)類型轉換。
CAST(expr AS type) CONVERT(expr,type)
以上兩種函數(shù)都可以將一個表達式轉換為指定的數(shù)據(jù)類型。其中,CAST
函數(shù)和CONVERT
函數(shù)是等價的,二者的使用方式完全相同。需要注意的是,雖然 MySQL 支持調用函數(shù)來進行數(shù)據(jù)類型轉換,但建議使用CAST
函數(shù)或CONVERT
函數(shù)來進行轉換,因為在一些使用情況下,其他函數(shù)可能會出現(xiàn)意外結果。
SELECT CAST('123.45' AS UNSIGNED); SELECT CONVERT('123.45',UNSIGNED);
在上述代碼中,'123.45'
是一個字符串,它需要被轉換為無符號整型。使用函數(shù)CAST
或CONVERT
可以很容易地將它們轉換成無符號整型,這兩種函數(shù)的效果是相同的。
SELECT CAST('20200529' AS DATE); SELECT CONVERT('20200529',DATE);
在上述代碼中,'20200529'
是一個字符串,它需要被轉換成日期類型。我們可以使用函數(shù)CAST
或CONVERT
來實現(xiàn)該轉換。這兩種函數(shù)的使用方法完全相同,并且會輸出相同的結果。
在 MySQL 中,還有其他許多數(shù)據(jù)類型轉換函數(shù),用于將不同的數(shù)據(jù)類型相互轉換。這些函數(shù)包括CONVERT_TZ()
,FROM_UNIXTIME()
,DATE_FORMAT()
等。熟悉這些函數(shù)的用法和參數(shù)可以讓我們更加高效地進行數(shù)據(jù)類型轉換。