我正在尝试在SQL服务器中执行IF语句类型函数.
如果字段中有NULL,我希望它从其中一个表中获取一个字段并添加10天.
如果可能的话,创建另一个列并添加30天.
SELECT DISTINCT
B.[ID],
MAX(A.[START DATE]),
B.[STAT],
C.[POST DATE],
CASE
WHEN (C.[POST DATE] BETWEEN C.[EVENT DATE]+10 AND C.[EVENT DATE]+30) THEN 'GOOD'
END AS [BETTER VISIT],
CASE
WHEN B.[STAT] IS NULL THEN (C.[EVENT DATE]+10)
ELSE '-'
END AS [DATE]
FROM
#TEMP1 A
FULL OUTER JOIN #TEMP2 B
ON A.[ID]=B.[ID]
FULL OUTER JOIN #TEMP3 C
ON A.[ID]=C.[ID]
GROUP BY
B.[ID],
B.[STAT],
C.[POST DATE],
C.[EVENT DATE]
ORDER BY
A.[START DATE] DESC
Run Code Online (Sandbox Code Playgroud)
结果看起来有点像:
ID START DATE STAT POST DATE BETTER VISIT DATE …Run Code Online (Sandbox Code Playgroud)