从表tblQuoteStatusChangeLog
我需要检查列NewQuoteStatusID
是否具有其中一个值(2,25或202),并选择最早的TimeStamp。
因此,如果它具有值2
,则选择TimeStamp
,如果它没有值2
,则检查是否有25
并选择相应的TimeStamp
,如果不是那么检查202
并拿起适当的印章。
因此,从tblQuoteStatusChangeLog
开始,我需要获取状态ID为202的第一行,因为它是唯一符合条件的行。
所以我有这个问题:
SELECT
(SELECT TOP (1) Timestamp
FROM tblQuoteStatusChangeLog
WHERE NewQuoteStatusID = COALESCE (2,25,202) AND ControlNo = tblQuotes.ControlNo
ORDER BY Timestamp DESC) as DateQuoted
FROM tblQuotes
INNER JOIN tblMaxQuoteIDs ON tblQuotes.QuoteID = tblMaxQuoteIDs.MaxQuoteID
where tblQuotes.ControlNo = 50065
但由于某种原因,我得到了NULL
值
我在这里缺少什么? 感谢