生成SQL查询所需的建议

时间:2014-08-22 04:35:09

标签: mysql sql

我有一个表格,我不知道如何形成像我期望的输出

的查询

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中使用的相应日期。 请指教。

1 个答案:

答案 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));

Demo