k)left join 左链接
查询用户拥有的电脑
用户表:
Id name
1 user1
2 user2
电脑表:
Id userId pcname
1 1 pc1
2 2 pc2
3 2 pc3
结果:
User1 pc1
User2 pc2
User2 pc3
select u.user_name, p.name, p.code from t_user u left join t_pc p on u.id = p.user_id ;
Select 要查询的字段名 from 表名 left join 被关联的表名 on 关联的条件 where 条件[and/or]
例子:
查询每个用户拥有哪些设备
查询用户张三有哪些设备
Select * from t_user u
Left join t_device on u.id=d.user_id
Where u.name = “zhangsan”
l)Union(字段名称、数量完全对应):
把多个SQL的结果集组合成一个
select u.id as id, u.user_name as name, u.age as age from t_user u
union
select s.id as id, s.name as name, s.age as age from t_student s
例子:查询所有老师和学生的姓名和年龄
Select t.name, t.age from t_teacher t
Union
Select s.name, s.age from t_student s