2013-07-11 45 views
17

在查詢選擇中,我想顯示字段是否滿足條件的結果。如果SQL Server中的條件選擇值

想象一下,我有一張名爲stock的表格。這個表格有一個列,告訴我股票中每個項目的數量。

我想什麼做的是這樣的:

SELECT 
    stock.name, IF (stock.quantity <20, "Buy urgent", "There is enough") 
FROM stock 

有沒有在SQL Server中的任何功能來做到這一點?

回答

42

嘗試Case

SELECT stock.name, 
     CASE 
     WHEN stock.quantity <20 THEN 'Buy urgent' 
     ELSE 'There is enough' 
     END 
FROM stock 
+0

我會用這個,但看起來這樣的恥辱必須這樣做,當我想要的只是一個布爾值。不明白爲什麼mssql不能讓我做「select(stock.quantity <20)作爲booleanValue」 –

+1

@JoshuaDuxbury如果你想要一個布爾值,你可以嘗試像http://stackoverflow.com/a/7778500/ 2246380 – Ram