我现在有一个查询,显示了我的团队,他们的当前角色(从另一表中查找):加入两个表的总和()表
SELECT firstName + ' ' + lastName as Name,
RTS_ROLE.roleDescription as `Current Role`,
FROM RTS_STAFF, RTS_ROLE
WHERE RTS_STAFF.staffRole = RTS_ROLE.roleID
AND staffDeleted <> true
ORDER BY roleID;
而另一查询列出了每个人的工作时间每周:
SELECT RTS_STAFF.staffId, Sum(IIf(Isnull(Monday),0,Monday)
+IIf(Isnull(Tuesday),0,Tuesday)
+IIf(Isnull(Wednesday),0,Wednesday)
+IIf(Isnull(Thursday),0,Thursday)
+IIf(Isnull(Friday),0,Friday)) AS `Weekly Hours`
FROM WORKING_HOURS, RTS_STAFF
WHERE RTS_STAFF.staffId = WORKING_HOURS.staffID
AND Date() > WORKING_HOURS.EffectiveFrom
GROUP BY RTS_STAFF.staffId;
我试过(不成功)通过将第二查询作为子查询中先用无果加入这些查询:我得到“你已经写在主查询中不使用EXIST关键字就可以返回多个字段的子查询...“
我试图得到一个查询,它将显示来自同一查询的工作人员姓名,角色名称和'当前'总工作时间。有人可以给我一个线索如何实现这个目标,或者我做错了什么(毫无疑问,这简直太尴尬了)。
如果能提供帮助,欢迎提供更多信息。
Table structure:
RTS_ROLE: (lookup table)
(pk)RoleID: number
roleDescription: string
RTS_STAFF
(pk)staffId: number
firstName: string
lastName: string
staffRole: number (fk to RTS_ROLE.roleID)
staffDeleted: boolean
WORKING_HOURS:
(pk)workingWeekID: number
staffID: number (fk to RTS_STAFF.staffId)
Monday: number
Tuesday: number
...
Friday:number
EffectiveFrom: date
我们使用(不要笑)MS Access 2007年
你能发表表结构(只有重要的列)和SQL数据库引擎的名称和版本吗? (我会重新创建这个表格,并试图提供一个答案) – WBAR
我已经将表格结构添加到原始文章;感谢您的努力! –