我想在 WHEN CASE 中使用多个条件。
我收到以下错误
Msg 4104,级别 16,状态 1,第 18 行
无法绑定多部分标识符"TableName.AAADPAddNoOfDates">
SELECT CASE
WHEN ((LTRIM(RTRIM(TableName.AAADPPapCode)) = (LTRIM(RTRIM(@PapCode))))
AND (DATEDIFF(DAY, (CONVERT(date, @PubDate, 111)), (CONVERT(date, CURRENT_TIMESTAMP, 111)))) > (TableName.AAADPAddNoOfDates)
AND (LTRIM(RTRIM(TableName.AAADPSysOperator))) != (LTRIM(RTRIM(@UserName)))) THEN 1
ELSE 0
END AS ErrorTag;
CASE
语句看起来不错,但缺少指定要从中选择的表的 FROM
子句。
您没有指定需要从中检索输出的表。
SELECT CASE
WHEN ((LTRIM(RTRIM(TableName.AAADPPapCode)) = (LTRIM(RTRIM(@PapCode))))
AND (DATEDIFF(DAY, (CONVERT(date, @PubDate, 111)), (CONVERT(date, CURRENT_TIMESTAMP,
111)))) > (TableName.AAADPAddNoOfDates)
AND (LTRIM(RTRIM(TableName.AAADPSysOperator))) != (LTRIM(RTRIM(@UserName)))) THEN 1
ELSE 0
END AS ErrorTag
FROM TableName;