我有兩個表(fruits
和fruitSales
),那裏有我的查詢要求是:案例查詢值
if fruit = 'Apple' OR 'Banana' then fire (query1) else fire(query2)
//即當我輸入的是蘋果或香蕉,然後QUERY1有火或其他查詢2。
這裏是我的兩個查詢:
查詢#1:
select a.*, b.quantity
from fruits a
left join fruitSales b on a.fruitPrice = '%'+b.fruitPrice+'%'
where a.fruit = 'Apple'
查詢#2:
select a.*, b.quantity
from fruits a
left join fruitSales b on a.fruitPrice like '%' + b.fruitPrice + '%'
where a.fruit = 'Orange'
總之:在我的查詢唯一的區別就是 「喜歡」 在查詢1中的query2和「=」。我不知道如何在這種情況下使用CASE查詢(因爲我的輸入數據依賴於Apple或Banana這兩個值)
解決方案非常感謝。
爲什麼不試試if else then case語句在哪裏as if else else在某些場景中優化器會更好。 (@fruit ='Apple') 然後開始查詢........結束 if(@fruit ='Banana') 然後開始查詢........結束 – 2014-12-02 06:41:13
可以我是這樣做的兩個輸入?如果(@水果=蘋果或@水果=香蕉)?像這樣的東西存在嗎? – HookUp 2014-12-02 06:42:50
確實走了吧 – 2014-12-02 06:44:39