示例1:
join:
select FirstName,LastName,City,state
from Person p left join Address a
on p.PersonId=a.PersonId;
①A inner join B:取交集
②A left join B:取A全部,B没有对应的值,则为null
③A right join B:取B全部,A没有对应的值,则为null
④A full outer join B:取并集,彼此没有对应的值为null
示例2:
方法 1:使用 WHERE 语句
从表里面获取两次信息
从两个表里使用 Select 语句可能会导致产生 笛卡尔乘积 。在这种情况下,输出会产生 4*4=16 个记录。然而我们只对雇员工资高于经理的人感兴趣。所以我们应该用 WHERE 语句加 2 个判断条件
select a.name as 'Employee'
from Employee as a,Employee as b
where a.managerId=b.id
and a.salary>b.salary;