[英]Oracle 12c - conditional where
我有這樣的查詢:
SELECT COUNT(*)
INTO v_count
FROM some_table
WHERE some_column = v_some_data
AND other_col = v_other_data
我想僅在v_other_date != 'A'
使用子句“ AND other_col = v_other_data
”。
這是最好的方法嗎?
SELECT COUNT(*)
INTO v_count
FROM some_table
WHERE some_column = v_some_data
AND other_col = case when v_other_data = 'A'
then other_col
else v_other_date
end
不要在where
子句中使用case
。 您可以隨時用布爾邏輯替換它
WHERE some_column = v_some_data
AND (v_other_date = 'A' OR other_col = v_other_data)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.