當特定值不存在時,我很難找到一種按默認值選擇列的好方法。當特定值不存在於where子句中時選擇默認值
SELECT TOP 1 colD, colE FROM table where (colA = @colA OR colA = 'default')
AND (colB = @colB OR colB = 'default')
AND (colC = @colC OR colC = 'default')
當然是有上述查詢的問題在於,它可能與「默認」值,當特定值在表中確實存在返回的行。有沒有經過批准(希望乾淨)的方式來做這樣的事情?我想我需要在那裏有ORDER BY,但我不確定如何最好地處理這個多列。
我想不必爲參數傳遞一個空值。我想傳遞一個特定的值,並檢查列中是否存在特定的值,如果沒有返回'默認'值。
用你自己的話說,你是什麼意思的「默認值」? – DMason
你的意思是隻返回你正在搜索的列嗎? –
我想添加查詢將會經歷的默認行,如果它沒有找到完全匹配。 – flerngobot