我想過濾SELECT語句。我想要的行爲是,如果參數@ProductID =%,那麼我想在WHERE子句執行以下操作:WHERE語句基於變量值
WHERE (DTH.TaskId IS NULL OR PDT.PK_Product LIKE @productId)
如果@ProductID不=%我想以下WHERE子句:
WHERE (PDT.PK_Product = @productId)
我無法實現此目的。
我已經嘗試過病例陳述,但無法讓它理解。我也嘗試過:
WHERE IF @productId = '%' (
DTH.TaskId IS NULL
OR PDT.PK_Product LIKE @productId
) ELSE (
PDT.PK_Product = @productId
)
這是造成語法錯誤。我如何獲得理想的結果?
LIKE opertator需要在左邊的字符數據類型。你的'PDT.PK_Product'不是一個字符數據類型。你想用'PDT.PK_Product LIKE @ productId'達到什麼目的?那就是,你期待什麼結果? –
用言語告訴我們你想要做什麼... –