2012-10-17 70 views
2

在數據庫中,在字段中,我有兩個字段,分別是picNameUserNamepicName可以有一個NULL的值,一個圖片的名字或者它可以是空的mySQL查詢空值和空值在一起

我要查詢其picName或者是NULL這些條目的userName

我單獨

Select userName from user where picName = '' 

Select userName from user where picName IS NULL 

嘗試了這些命令,但我想在1個查詢來獲取兩個結果。

我嘗試使用IN運營商這樣

Select userName from user where picName IN ('' , IS NULL) 

但沒有奏效。

我該怎麼做......?

回答

11

使用OR如果你有你的病情多重過濾

Select userName 
from user 
where picName IS NULL OR 
     picName = '' 
0
SELECT userName FROM `user` WHERE picName IS NULL OR picName = '' 
1

你想要的兩個條件之一滿足,所以條件一個OR條件的兩個必須是真實的,而這正是你需要的寫:

Select userName from user where picName = '' OR picName IS NULL 
4

其他答案另一種方法是使用MySQL的IFNULL()COALESCE()功能S:

SELECT userName FROM user WHERE IFNULL(picName='',TRUE); 
SELECT userName FROM user WHERE COALESCE(picName,'') = ''; 
-1
select userName from user WHERE ISNULL(picName ,'') = '' 
0

... ISNULL(picName, '')是函數MSSQL

選擇情況下,當(picname爲空或 picname = '' 然後用戶名其他'filled'end from user

給你UserName if picname =''或null否則文本'Filled'。 如果你想過濾這些使用(像其他說的那樣): ...其中picname爲null或picname =''