我的SQL查詢如下凡在SQL子句
IF @StatusId = 10
BEGIN
SELECT
*
FROM
Risk AS R
INNER JOIN Statuses AS St ON R.Status_Id=St.Status_Id
WHERE
R.MitigationOwner = COALESCE(@MitigationOwner,R.MitigationOwner)
AND R.RiskFactor = COALESCE(@RiskFactor,R.RiskFactor)
AND R.RiskArea = COALESCE(@RiskArea,R.RiskArea)
AND R.AddedWhen BETWEEN
COALESCE(CONVERT(DATETIME, @StartDate+'00:00:00',120),R.AddedWhen) AND
COALESCE(CONVERT(DATETIME,@EndDate+'23:59:59',120),R.AddedWhen)
END
當我只傳遞狀態標識及所有其它變量爲空,然後用NULL MitigationOwner或ModifiedDate記錄不會顯示.. 什麼是錯的這個查詢?
謝謝...這個工作對我來說 – user1181942 2012-04-05 12:26:14
@ user1181942不客氣,你應該當他們解決您的問題的答案標記爲接受,讓別人不會有走線槽所有的答案,找到合適的人: ) – 2012-04-05 12:31:11
yes..I只有4分鐘後慶祝吧.. – user1181942 2012-04-05 13:00:09