专家你好:我有一个表叫tblAlarm
,它有一些记录是这样的:行为过滤空值
我有另一个表,确定哪些用户看到什么消息:
现在我想编写一个查询表明,如果消息didinot到期。(例如它的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)
,并返回:
,但如果我去掉最后一行它不返回任何record.How我可以确定用户还没有看到什么信息?
谢谢
非常感谢,但你最后两个条件不符合我的条件 – Arian 2012-04-07 07:08:02
它们是说明性的,而不是你的查询的答案。我不清楚你想做什么。我正在帮你学习如何钓鱼,而不是给你今天的鱼。 – 2012-04-07 07:44:39