我有下面的select语句。如何在SQL Select语句中使用If else
WITH cte AS
(
SELECT MAX(logDate) AS Daily
FROM PhysicalDriveSize
GROUP BY DATEADD(m, DATEDIFF(m, 0, logDate), 0)
)
SELECT CAST(MIN(t.logDate) AS DATE) AS [Date], Drive, MIN(t.Free) AS [PercentagFree]
FROM PhysicalDriveSize AS t
JOIN cte AS m
ON t.logDate = m.Daily
WHERE t.Free <= 10 AND t.Free >= 0
GROUP BY Drive, logDate
我想根据结果做一些操作,例如:
WITH cte AS
(
SELECT MAX(logDate) AS Daily
FROM PhysicalDriveSize
GROUP BY DATEADD(m, DATEDIFF(m, 0, logDate), 0)
)
SELECT MIN(t.Free) AS [PercentagFree]
FROM PhysicalDriveSize AS t
JOIN cte AS m
ON t.logDate = m.Daily
WHERE t.Free <= 10 AND t.Free >= 0
GROUP BY Drive, logDate
IF t.Free <= 10 AND t.Free >= 5
PRINT 'Warning'
Else
PRINT 'Critical'
我得到下面的错误,如果我if语句执行:
Msg 4104, Level 16, State 1, Line 13 The multi-part identifier "t.Free" could not be bound. Msg 4104, Level 16, State 1, Line 13 The multi-part identifier "t.Free" could not be bound
我怎么能搞,如果没有错误的语句?
你得到了什么错误? – MusicLovingIndianGirl
消息4104,级别16,状态1,行13 无法绑定多部分标识符“t.Free”。 Msg 4104,Level 16,State 1,Line 13 无法绑定多部分标识符“t.Free”。 – user1071629
你应该使用一个案例statmement – Ric