2014-08-29 72 views
-1

我有產品的列表,並想創建一個語法爲:如何處理字符串不等於...然後空白?

case when product is not 'apple' or product is not 'pear' or product is not 'plum' then 0 else product end 

我如何做到這一點? 我試過

case when product <> 'apple' 
    when product <> 'pear' 
    when product <> 'plum' then 0 
    else product 
end 

但這似乎不起作用。

回答

3

像這樣的東西?

SELECT CASE 
      WHEN Product NOT IN ('Apple', 'Pear', 'Plum') THEN 0 
      ELSE Product 
     END 
FROM ... 
0

就像你問的那樣,用「OR」分隔條件而不是「WHEN」。

+0

明白了!謝謝大家!但我還有一個問題。所以我們有各種各樣的產品,包括水果和紙張等未過期的東西。 產品---------有效期 我該如何做案例陳述,以顯示:產品不是蘋果或產品不是橙色,然後填寫到期1的情況? – RoseChris 2014-08-29 17:56:17

+0

@ user3508386您應該更新您的問題或創建另一個問題,因爲您現在有新的需求。另外,選擇更適合您需要的答案並將其標記爲一個答案。 – 2014-08-29 18:02:30

1

我不知道你的表中的字段,但它會是這個樣子

SELECT case when (Product <> 'apple' 
        OR Product <> 'pear' 
        OR Product <> 'plum' 
       ) then 0 else Product end as ProductName 
FROM tableName