1.union 和 union all
union 关键字 获得的结果是去重复的 ;union all 获得的结果是包含重复数据的;
(两个表中 字段值都相同才算重复 )
比如 :select a.name ,a.age from tb_a a union select b.name ,b.age from tb_b b;只有当a.name 和 b.name相同,同时a.age h和 b.age 相同 ,那么才算重复数据,该行才会被去掉一行。
2.left join
比如:select * from tb_a a left join tb_b b on a.id = b.a_id ;(a表的id关联b表中的a_id字段,注意,a表在前) ;
假设 a表 数据为 10行,b表为 5行;
这时候 ,结果将会显示10行,b表中没有的那5行将显示为 null;
如果b表在前,那么将会显示 5行;
3.inner join
比如:select * from tb_a a inner join tb_b b on a.id = b.a_id;
结果将会显示,a.id = b.a_id 匹配到的行(也就是满足该条件的行)。