所以这是一个非常奇怪的情况,但我需要弄清楚如何连接两个select语句。我有两个select语句返回“filekeys”列表(员工标识符),就是这样,每个只有一列,我想返回一个包含所有文件密钥的列表。可能有重复或不重复,对我来说无关紧要。
现在通常情况下,我只是调整我的位置,但我不能让它工作,所以也许这就是答案,这是(一个非常基本的版本)正在发生的事情
select yt.filekey from EMPLOYEES yt
inner join (
select filekey, SUM(hours) as test
from PAYDESHIST
where WG2 = 1
and eventdate between (date1) and (date2)
group by filekey having SUM(hours) > 40)
ss on yt.FILEKEY = ss.FILEKEY
其中有第二个具有不同的日期
基本上我需要看看员工是否在一周或两周内工作超过40小时。如果一名员工在这两周内工作超过40小时并不重要,那么这些工作将在以后过滤到一个列表。
我已尝试完全加入,但对于每周工作超过40小时的每位员工,我都会获得null。
请帮忙! 感谢
此外,代码中可能存在一些错误,这不是问题,错误是因为实际调用要花费更长时间来获取这些日期以及各种疯狂的东西所以在复制它时我可能错过了一个括号或其他东西。
答案 0 :(得分:0)
似乎答案是这样的:
select yt.filekey from EMPLOYEES yt
inner join (
select filekey, test from (
select filekey, SUM(hours) as test
from PAYDESHIST
where WG2 = 1
and eventdate between (date1) and (date2)
group by filekey having SUM(hours) > 40)
ss on yt.FILEKEY = ss.FILEKEY)
union all
select filekey, SUM(hours) as test
from PAYDESHIST
where WG2 = 1
and eventdate between (date3) and (date4)
group by filekey having SUM(hours) > 40)
ss on yt.FILEKEY = ss.FILEKEY)
)
)
根据我们的评论讨论