MySQL查詢字段為NULL、不為NULL的數(shù)據(jù)問題
MySQL查詢字段為NULL、不為NULL的數(shù)據(jù)
對于NULL字段的操作,有幾點(diǎn)注意的地方,統(tǒng)一收集記錄在此文章,以便后面的查找使用。
1.查詢表中某一字段為NULL的結(jié)果
select * FROM table1 WHERE column1=null; #錯(cuò)誤使用方法:查詢結(jié)果為空 select * FROM table1 WHERE isNull(column1); #正確使用方法,注意isNull的大小寫。isNULL就會(huì)報(bào)語法錯(cuò)誤。
2.查詢表中某一字段不為null的結(jié)果
select * FROM table1 WHERE column1 IS NOT NULL;
3.NULL與其他字符的拼接、運(yùn)算、比較操作
select null+"aa"; #結(jié)果為NULL select concat(null,"a"); #NULL與其他字符做拼接,結(jié)果為NULL select null+1; #NULL與其他字符做運(yùn)算,結(jié)果為NULL select null<>0; #NULL與其他字符做比較,結(jié)果為NULL
在查詢數(shù)據(jù)時(shí),條件是某個(gè)字段不為空。
在這里用密碼不為空來舉例:
SELECT * FROM user WHERE password != NULL
可以看到在我的數(shù)據(jù)庫里面,user表是有數(shù)據(jù)的
但是點(diǎn)擊運(yùn)行后,卻沒有任何結(jié)果。
接下來把查詢語句里面的 != 換成 IS NOT
SELECT * FROM user WHERE password IS NOT NULL
會(huì)發(fā)現(xiàn)查詢到了數(shù)據(jù),用 != 查不到數(shù)據(jù),用 IS NOT NULL 才可以
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
MySQL正則表達(dá)式regexp_replace函數(shù)的用法實(shí)例
regexp_replace的使用非常靈活,且容易忘記,故做此筆記,下面這篇文章主要給大家介紹了關(guān)于MySQL正則表達(dá)式regexp_replace函數(shù)的用法實(shí)例,需要的朋友可以參考下2022-09-09FROM_UNIXTIME 格式化MYSQL時(shí)間戳函數(shù)
對MYSQL沒有進(jìn)行過深入的研究,基礎(chǔ)知識匱乏,一遇到問題只能手冊,看來要把MYSQL的學(xué)習(xí)安排進(jìn)時(shí)間表了。2011-04-04MySQL時(shí)間格式化date_format使用語法
這篇文章主要為大家介紹了MySQL時(shí)間格式化date_format使用語法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05數(shù)據(jù)庫管理中19個(gè)MySQL優(yōu)化方法
小編給大家總結(jié)了19條非常實(shí)用的MySQL數(shù)據(jù)庫優(yōu)化方法,這是每個(gè)服務(wù)器管理人員都必須知道的,一起學(xué)習(xí)下。2017-11-11Windows系統(tǒng)下MySQL忘記root密碼的2種解決辦法
這篇文章主要介紹了Windows系統(tǒng)下MySQL忘記root密碼的2種解決辦法,一種是通過啟動(dòng)MySQL時(shí)跳過權(quán)限表驗(yàn)證,然后重置密碼,另一種是創(chuàng)建一個(gè)包含新密碼的文本文件,并通過MySQL的--init-file選項(xiàng)來應(yīng)用該文件中的密碼設(shè)置,需要的朋友可以參考下2024-11-11mysql 本地?cái)?shù)據(jù)庫如何從遠(yuǎn)程數(shù)據(jù)庫導(dǎo)數(shù)據(jù)
mysql 本地?cái)?shù)據(jù)庫如何從遠(yuǎn)程數(shù)據(jù)庫導(dǎo)數(shù)據(jù),本文以此問題進(jìn)行詳細(xì)介紹,需要了解的朋友可以參考下2012-11-11