上述屬性沒(méi)有什么用處,特別是當(dāng)我們想要連接列中的值并且任何列的值為 NULL 時(shí)。為了克服這個(gè)問(wèn)題,我們可以使用 IFNULL() 函數(shù)和 CONCAT() 函數(shù)。為了理解它,我們考慮表“Student_name;”中的示例。其中有以下數(shù)據(jù) –
mysql> Select * from Student_Name; +---------+-------+---------+ | FName | Mname | Lname | +---------+-------+---------+ | Rahul | NULL | Singh | | Gaurav | Kumar | NULL | | Harshit | NULL | Khurana | | Yash | Pal | Sharma | +---------+-------+---------+ 4 rows in set (0.00 sec)
登錄后復(fù)制
現(xiàn)在,假設(shè)如果我們想要連接 Fname、Mname 和 Lname 列的值,則輸出如下 –
mysql> Select CONCAT(Fname,Mname,Lname)AS Name from Student_Name; +---------------+ | Name | +---------------+ | NULL | | NULL | | NULL | | YashPalSharma | +---------------+ 4 rows in set (0.00 sec)
登錄后復(fù)制
但是,我們知道這不是有用的輸出,因?yàn)?CONCAT() 函數(shù)的屬性是,如果任何參數(shù)為 NULL,它就會(huì)返回 NULL。我們可以借助 IFNULL() 函數(shù)克服此屬性,如以下查詢(xún)所示 –
mysql> Select CONCAT(IFNULL(Fname,''),IFNULL(Mname,''),IFNULL(Lname,''))AS Name from Student_Name; +----------------+ | Name | +----------------+ | RahulSingh | | GauravKumar | | HarshitKhurana | | YashPalSharma | +----------------+ 4 rows in set (0.06 sec)
登錄后復(fù)制
以上就是我們?nèi)绾慰朔?CONCAT() 函數(shù)的屬性,即如果任何一個(gè)參數(shù)為 NULL,它就會(huì)返回 NULL,特別是當(dāng)我們想要連接列中的值并且任何列的值都為 NULL 時(shí)?的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注www.92cms.cn其它相關(guān)文章!