共計 1089 個字符,預(yù)計需要花費(fèi) 3 分鐘才能閱讀完成。
這篇文章主要介紹 MySQL 數(shù)據(jù)庫中 null 的知識點有哪些,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!
在 mysql 數(shù)據(jù)庫中,null 是一個經(jīng)常出現(xiàn)的情況,關(guān)于 mysql 中的 null,有哪些注意事項呢?
1. is null
首先判斷數(shù)據(jù)庫中某一列的值是否為 null,不能用等于來判斷,必須使用 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 數(shù)據(jù)庫中內(nèi)置了 ISNULL() 函數(shù),其使用方法與 MySQL 中提供的 sum()等其他內(nèi)置函數(shù)一樣。比如,select ISNULL(user_name) from users where user_name =‘Demrystv 返回值是 0;select ISNULL(NULL) 返回值是 1
3. IFNULL()
MySQL 數(shù)據(jù)庫中內(nèi)置了 IFNULL() 函數(shù),其使用方法與 MySQL 中提供的 sum()等其他內(nèi)置函數(shù)一樣。其主要接收兩個參數(shù),第一個參數(shù)是要判斷空值的字段或值,第二個字段是當(dāng)?shù)谝粋€參數(shù)是空值的情況下要替換返回的另一個值,即如果第一個字段為 null,會將其替換成其他值。比如,select IFNULL(NULL,“java is the best language of the world”),由于第一個參數(shù)的值 NULL,因此會輸出第二個參數(shù)的值,java is the best language of the world;同理,若第一個字段不為空,則會返回第一個字段的值。
4. insert into 與 null
在使用 insert into 往表中灌數(shù)據(jù)的時候,需要首先明確一下表里是 null,還是空,如果是 null,那么就不能使用 insert into 進(jìn)行灌數(shù)據(jù),必須使用 update,這一點看似簡單,但是在實際開發(fā)中經(jīng)常容易忽略,因此需要特殊注意。
例子:
創(chuàng)建一個 test 表,colA 是不可以存放 null 值的,colB 是能存放 null 值的。
CREATE TABLE `test` (`colA` varchar(255) NOT NULL,
`colB` varchar(255) DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
以上是“MySQL 數(shù)據(jù)庫中 null 的知識點有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注丸趣 TV 行業(yè)資訊頻道!