PHP速学视频免费教程(入门到精通)
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
mysql求差集的方法:1、使用not exists来筛选两表的差集;2、通过LEFT JOIN连接后所产生空字段值来筛选两表的差集。
本文操作环境:windows7系统、mysql8.0版、Dell G3电脑。
mysql怎么求差集?
mysql如何查询两个字段数不同的表中数据不一致的记录
一般可用NOT EXISTS(非存在子句)或 LEFT JOIN左(右)连接后所产生空字段值来筛选两表的差集
1、NOT EXISTS
not exists在比对字段有可利用的索引时,其运行效率是非常高,但是如果没有索引的情况下运行在大数据表时,其运行效率极差,这时应避免使用它
SELECT * FROM smd_employee t1 WHERE NOT EXISTS ( SELECT 1 FROM asd_user_account t2 WHERE t2.u_phone = t1.employee_phone );
2、LEFT JOIN
用左(右)连接来求差集,由于需要实施两表连接会导致笛卡尔效应其输出集的记录行可能会增多,
若果不是一对一或一对多,我们应该将多对多的情况处理成多对一后才进行连接,否则输出的记录集可能不正确。
SELECT a.* FROM smd_employee a LEFT JOIN asd_user_account b ON b.u_phone = a.employee_phone WHERE b.u_phone IS NULL;
求差集的两种方法,有索引可利用时,not exists的效率要高于left join,反之left join效率更好
【相关推荐:mysql视频教程】
已抢7587个
抢已抢97566个
抢已抢15263个
抢已抢54011个
抢已抢198451个
抢已抢88402个
抢