Union(结果合并)
1.用于合并两个或多个语句的结果(合并的结果必须拥有相同属性的列,顺序也必须一致)
2.默认筛选出不一样的值,可使用UNION ALL来显示重复的值
Join(连表查询)
利用两表的某一相同属性的列,合并获取结果
select Persons.LastName, Persons.FirstName, Ord.Num FROM Persons, Ord WHERE Persons.Id = Ord.Id
等价于
select Persons.LastName, Persons.FirstName, Ord.Num
from Persons
join Ord
on Persons.Id = Ord.Id
order by Persons.LastName
区别:
join 默认内连接(inner join):如果表中有至少一个匹配,则返回行
left join: 即使右表中没有匹配,也从左表返回所有的行
right join:即使左表中没有匹配,也从右表返回所有的行
full join:只要其中一个表中存在匹配,就返回行