我有一个表格,我不知道如何形成像我期望的输出
的查询temp 5
id empid date
1 E001 11/7
2 E002 11/7
3 E003 11/7
4 E004 11/7
5 E005 11/7
6 E001 12/7
7 E002 12/7
8 E003 12/7
9 E004 12/7
10 E005 12/7
11 E001 13/7
12 E002 13/7
13 E003 13/7
14 E004 13/7
15 E005 13/7
temp6
Id empid date
1 E001 11/7
2 E002 11/7
3 E005 12/7
4 E001 13/7
5 E004 13/7
temp 7
id date
1 11/7
2 12/7
3 13/7
输出:我期待这些结果
id empid date
3 E003 11/7
4 E004 11/7
5 E005 11/7
6 E001 12/7
7 E002 12/7
8 E003 12/7
9 E004 12/7
12 E002 13/7
13 E003 13/7
15 E005 13/7
如何从temp5中检索所有员工的值,但不在temp6员工ID中检索temp7中使用的相应日期。 请指教。
答案 0 :(得分:0)
试试这个
select t.* from (select temp5.* from temp5 inner join temp7 on
temp5.da=temp7.da) as t,(select group_concat(empid) as id,
da from temp6 group by da) as t1 where t.da=t1.da and
not find_in_set(t.empid,(t1.id));