oracle字符連接?
和其他數(shù)據(jù)庫系統(tǒng)類似,Oracle字符串連接使用“||”進(jìn)行字符串拼接,其使用方式和MSSQLServer中的加號(hào)“+”一樣。
比如執(zhí)行下面的SQL語句:
SELECT '工號(hào)為'||FNumber||'的員工姓名為'||FName FROM T_Employee WHERE FName IS NOT NULL 除了“||”,Oracle還支持使用CONCAT()函數(shù)進(jìn)行字符串拼接,比如執(zhí)行下面的SQL語句:
SELECT CONCAT('工號(hào):',FNumber) FROM T_Employee 如果CONCAT中連接的值不是字符串,Oracle會(huì)嘗試將其轉(zhuǎn)換為字符串,比如執(zhí)行下面的SQL語句:
SELECT CONCAT('年齡:',FAge) FROM T_Employee 與MYSQL的CONCAT()函數(shù)不同,Oracle的CONCAT()函數(shù)只支持兩個(gè)參數(shù),不支持兩個(gè)以上字符串的拼接,比如下面的SQL語句在Oracle中是錯(cuò)誤的:
SELECT CONCAT('工號(hào)為',FNumber,'的員工姓名為',FName) FROM T_Employee WHERE FName IS NOT NULL 運(yùn)行以后Oracle會(huì)報(bào)出下面的錯(cuò)誤信息: 參數(shù)個(gè)數(shù)無效 如果要進(jìn)行多個(gè)字符串的拼接的話,可以使用多個(gè)CONCAT()函數(shù)嵌套使用,上面的SQL可以如下改寫:
代碼如下:SELECT CONCAT(CONCAT(CONCAT('工號(hào)為',FNumber),'的員工姓名為'),FName) FROM T_Employee WHERE FName IS NOT NULL