需要 SQL 声明 return 记录 return Null
Need SQL statement to return records that return Null
这是我正在使用的三个表:
这是我正在使用的 SQL 语句:
SELECT DISTINCT Employees.Corps_ID, Employees.Last_Name, Employees.First_Name, Employees.Home_Phone, Employees.Mobile_Phone
FROM Shifts INNER JOIN (Employees INNER JOIN Employees_Shifts ON Employees.Employee_ID = Employees_Shifts.Employee_ID) ON Shifts.Shift_ID = Employees_Shifts.Shift_ID
WHERE Shifts.Start_Date_Time Between #11/1/2015# And #12/1/2015# And Employees_Shifts.Employee_ID = NULL ;
我真正需要此查询做的是检查指定日期范围内的所有班次,并且 return 仅检查那些 不 匹配的员工记录。
我已经尝试在几个地方将 INNER 运算符更改为 LEFT,但 Access 一直在抱怨并且不会 运行 查询。我绝对需要一些帮助。请指教
SELECT Employees.Corps_ID, Employees.Last_Name, Employees.First_Name, Employees.Home_Phone, Employees.Mobile_Phone
FROM Employees
WHERE NOT EXISTS(
SELECT * from Employees_Shifts
JOIN Shifts ON Shifts.Shift_ID = Employees_Shifts.Shift_ID
WHERE Shifts.Start_Date_Time Between #11/1/2015# And #12/1/2015#
AND Employees_Shifts.Employee_ID = Employees.Employee_ID
)
顺便说一句,DISTINCT 通常表示架构或查询存在问题,请始终询问您为什么需要它。
这是我正在使用的三个表:
这是我正在使用的 SQL 语句:
SELECT DISTINCT Employees.Corps_ID, Employees.Last_Name, Employees.First_Name, Employees.Home_Phone, Employees.Mobile_Phone
FROM Shifts INNER JOIN (Employees INNER JOIN Employees_Shifts ON Employees.Employee_ID = Employees_Shifts.Employee_ID) ON Shifts.Shift_ID = Employees_Shifts.Shift_ID
WHERE Shifts.Start_Date_Time Between #11/1/2015# And #12/1/2015# And Employees_Shifts.Employee_ID = NULL ;
我真正需要此查询做的是检查指定日期范围内的所有班次,并且 return 仅检查那些 不 匹配的员工记录。
我已经尝试在几个地方将 INNER 运算符更改为 LEFT,但 Access 一直在抱怨并且不会 运行 查询。我绝对需要一些帮助。请指教
SELECT Employees.Corps_ID, Employees.Last_Name, Employees.First_Name, Employees.Home_Phone, Employees.Mobile_Phone
FROM Employees
WHERE NOT EXISTS(
SELECT * from Employees_Shifts
JOIN Shifts ON Shifts.Shift_ID = Employees_Shifts.Shift_ID
WHERE Shifts.Start_Date_Time Between #11/1/2015# And #12/1/2015#
AND Employees_Shifts.Employee_ID = Employees.Employee_ID
)
顺便说一句,DISTINCT 通常表示架构或查询存在问题,请始终询问您为什么需要它。