這篇文章主要介紹數據庫中null的知識點(diǎn)有哪些,文中介紹的非常詳細,具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
在mysql數據庫中,null是一個(gè)經(jīng)常出現的情況,關(guān)于mysql中的null,有哪些注意事項呢?
1. is null
首先判斷數據庫中某一列的值是否為null,不能用等于來(lái)判斷,必須使用 is。比如,select * from users where user_name is null 或者 select * from users where user_name is not null,而不能是 select * from users where user_name = null
2. ISNULL( )
MySQL數據庫中內置了 ISNULL( ) 函數,其使用方法與MySQL中提供的sum()等其他內置函數一樣。比如,select ISNULL(user_name) from users where user_name = ‘Demrystv' 返回值是 0;select ISNULL(NULL) 返回值是1
3. IFNULL()
MySQL數據庫中內置了 IFNULL( ) 函數,其使用方法與MySQL中提供的sum()等其他內置函數一樣。其主要接收兩個(gè)參數,第一個(gè)參數是要判斷空值的字段或值,第二個(gè)字段是當第一個(gè)參數是空值的情況下要替換返回的另一個(gè)值,即如果第一個(gè)字段為null,會(huì )將其替換成其他值。比如,select IFNULL(NULL, “java is the best language of the world”),由于第一個(gè)參數的值NULL,因此會(huì )輸出第二個(gè)參數的值,java is the best language of the world;同理,若第一個(gè)字段不為空,則會(huì )返回第一個(gè)字段的值。
4. insert into 與null
在使用insert into往表中灌數據的時(shí)候,需要首先明確一下表里是null,還是空,如果是null,那么就不能使用 insert into進(jìn)行灌數據,必須使用 update,這一點(diǎn)看似簡(jiǎn)單,但是在實(shí)際開(kāi)發(fā)中經(jīng)常容易忽略,因此需要特殊注意。
例子:
創(chuàng )建一個(gè)test表,colA是不可以存放null值的,colB是能存放null值的。
CREATE TABLE `test` ( `colA` varchar(255) NOT NULL, `colB` varchar(255) DEFAULT NULL ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站