嗨专家:我有一个表叫做tblAlarm
,它有一些这样的记录:
我有另一个表来确定哪些用户看到了什么消息:
现在我想写一个查询来显示用户没有看到的消息如果消息没有过期。(例如它是 BeginYear 和 EndYear 之间的年份等等......)。我写了这个查询:
SELECT *
FROM
tblAlarms LEFT OUTER JOIN tblUsersAlarms tua ON tblAlarms.Id=tua.MessageID
WHERE @CurrentYear BETWEEN tblAlarms.BeginYear AND tblAlarms.EndYear
AND @CurrentMonth BETWEEN tblAlarms.BeginMonth AND tblAlarms.EndMonth
AND @CurrentDay BETWEEN tblAlarms.BeginDay AND tblAlarms.EndDay
AND @CurrentHour * 60 + @CurrentMinute BETWEEN tblAlarms.BeginHour*60 + tblAlarms.BeginMinute AND tblAlarms.EndHour*60 + tblAlarms.EndMinute
--AND (tua.UserID <> 128 AND tua.UserID IS NULL)
它返回:
但是如果我取消注释最后一行,它不会返回任何记录。我如何确定哪些消息没有看到用户?
谢谢