我正在尝试创建一个访问查询,该查询将在有人错过某个任务时进行报告,具体取决于该任务没有任何记录。
我有一个记录任务完成基本字段的表是:
Date
Shift
Task
Tech
当技术人员完成任务时,会记录事件创建记录。
我需要能够提取一个查询,以确定班次错过任务的时间。
我尝试使用带有shift作为唯一数据的示例表,尝试使用无法匹配的查询,甚至尝试将任务添加到此表中。
所以我正在寻找一些SQL帮助。
必须有办法做到这一点......
答案 0 :(得分:0)
是否像
SELECT Date, Shift, Task, Tech
WHERE Shift IS NOT NULL AND Task IS NULL
答案 1 :(得分:0)
如果我们假设(我知道那是危险的)你有一个单独的移位表,那么你要查找的列表中的移位是一个外键。我认为您正在寻找没有任何相关任务的班次ID。您可以使用联接并在任务表中搜索空值。 例如:
SELECT shifttable.shift, Tasktable.task, tasktable.tech, tasktable.date
FROM shiftTable
LEFT JOIN TaskTable
ON TaskTable.ShiftID = shiftTable.ShiftID
WHERE TaskTable.PrimaryKey IS NULL
鉴于数据: 班次表:
ShiftID Shift
1 Monday
2 Tuesday
3 Wednesday
任务表
TaskID ShiftID Date tech task
1 1 5/15/15 bob job 1
2 3 5/22/15 Sam job 4
会得出结果:
Shift
Tuesday