www.fltk.net > mysql两边比对,删除一表中重复的数据

mysql两边比对,删除一表中重复的数据

DELETE FROM sheet3 WHERE id in ( SELECT a.手机 FROM sheet3 a left join t_cus_info b on a.`手机`= b.F_PHONE) sheet3的id必须是手机

SELECT a.date_3 - b.date_3 FROM tab1 a,tab2 b WHERE b.numb = a.numb 前提是tab1和tab2都要有对应的numb

select t1.*, t2.* from 真实表 t1 full join 临时表 using (id) //using也可写成on t1.id=t2.id where t1.f!=t2.f or (t1.f is null and t2.f is not null) or (t1.f is not null and t2.f is null)

这个是数据库的基础应用哦,你的基础应该加强点。 select * from 表A where 表A.a not in(select 表B.a from 表B)

假设是学生退出登录时在t1表删除数据 假设id各为两个表的主键 select * from t2 where id not in (select id from t1) 结果集是t2表中id不在t1表的数据

insert into T2(A,B,C) select A,B,C from T1 where concat(A,B,C) not in (select concat(A,B,C) from T2) 注意:以上语句不能处理A,B,C中有null值的情况。

你说的太模糊了, A、B表就一行数据吗? 还是两个表中有多行数据,只要在两个表中有Key相同的就返回一个值?

一次取出表一中的所有记录(6W,不多),然后用 try 往表2里插,因为表2字段是唯一的,所以中间重复数据可能有出错的地方,出错则直接抛弃,不管它 select from table1 while(each rows){ try{ insert into table2 } catch ($e){ do nothing.. } }

对两个表都复制到新表,假设为A1, B1 A1, B1增加字段hash,然后,对每条记录选几个字段,按照相同顺序,组合到一起,形成一个字符串,然后对这个字符串,求MD5(或者别的也可以,只要是hash算法都成),装入hash字段然后,以hash建索引 这时候...

可以用语句快速过滤 select * from 人员表 where 姓名 not in (select 姓名 from 出勤表)

网站地图

All rights reserved Powered by www.fltk.net

copyright ©right 2010-2021。
www.fltk.net内容来自网络,如有侵犯请联系客服。zhit325@qq.com