我的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