使用group by显示数据不在其他表中的表中的数据

y3bcpkx1  于 2021-06-21  发布在  Mysql
关注(0)|答案(2)|浏览(252)

我有一张这样的table。

还有一张这样的table

我的问题是。如何显示表2中不在表1上的数据?例如在日期的基础上。

我怎么能把日期算进去?
先生,我的意思是,如何显示表2中不在表1中的数据?例如 BBB,CCC,DDD,EEE 不在表1中 AAA 日期 1/1/2018

tp5buhyn

tp5buhyn1#

使用生成所有可能的行 cross join 然后剔除那些不存在的:

select n.name, d.date
from table2 n cross join
     (select distinct date from table1) d left join
     table1 t1
     on n.name = t1.name and d.date = t1.date
where t1.name is null;
kuuvgm7e

kuuvgm7e2#

SELECT a.*,b.*,
FROM Table1 a
LEFT JOIN Table2 b
Where a.Name <>b.Name

尝试上面的查询。如果这不起作用,请提供一个sqlfiddle,我们将改进它。

相关问题