CREATE TABLE A ( `C1` VARCHAR(10), `C2` VARCHAR(10), `C3` VARCHAR(10), `C4` VARCHAR(10), `C5` INT ); INSERT INTO A SELECT '华北', '辽宁', '沈阳', '20020202', 2 UNION ALL SELECT '华东', '山东', '青岛', '18020133', 3 UNION ALL SELECT '华北', '北京', '北京', '7193', 7 UNION ALL SELECT '华北', '北京', '北京', '8358', 5 UNION A
你是要查前十个查询结果中相同的那些记录,而不求前十个相同记录吧,因为这是有差别的,按照你的语句,应该是求前者,即先求出A的前十条数据,B的前十条数据,再求它们的交集。 既然是求交集,那么这两个表的关系模式应该是相同的了, select a.* from (select * from table order by table.a desc limit 10) as a, (select * from table order by table.b desc limit 10) as b where a.primary_key = b.primary_key --先将两个结果作为两张临时表,然后通过
标签:两表,mysql,差集