一、在mysql操作中我們經(jīng)常需要對(duì)數(shù)據(jù)進(jìn)行類型轉(zhuǎn)換。此時(shí)我們應(yīng)該使用的是cast()或convert()。 二、兩者的對(duì)比 相同點(diǎn):都是進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換,實(shí)現(xiàn)的功能基本等同 不同點(diǎn):兩者的語(yǔ)法不同,cast(value as type) 、 convert(value,type) select cast(表達(dá)式 as 數(shù)據(jù)類型) 三、可以轉(zhuǎn)換的類型是有限制的。這個(gè)類型可以是以下值其中的一個(gè): 二進(jìn)制,同帶binary前綴的效果 : BINARY 字符型,可帶參數(shù) : CHAR() 日期 : DATE 時(shí)間: TIME 日期時(shí)間型 : DATETIME 浮點(diǎn)數(shù) : DECIMAL 整數(shù) : SIGNED 無(wú)符號(hào)整數(shù) : UNSIGNED 四、CAST()函數(shù)和CONVERT()函數(shù)實(shí)例 1.將“234”轉(zhuǎn)化為數(shù)值型數(shù)據(jù),并與123相加進(jìn)行數(shù)學(xué)運(yùn)算。 select CAST('234' as int)+123 ![]() 注:當(dāng)234加了單引號(hào),即表示其非數(shù)值,123沒(méi)有加引號(hào),所以123為數(shù)值型。 2.將id轉(zhuǎn)換為字符 語(yǔ)句: SELECT convert(id,char(10)) from a; 執(zhí)行結(jié)果: |
|