こんにちは専門家:私は呼び出されたテーブルを持っています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)
そしてそれは戻ります:
ただし、最後の行のコメントを解除すると、レコードは返されません。ユーザーに表示されていないメッセージを特定するにはどうすればよいですか。
ありがとう