组合两个表
题目:
表连接:
这题的信息在两张表中,需要有两张表的连接,而Person表明显是主表,它需要显示全部信息,而City还有State这些信息都是对它的补充,所以在表的连接上采用Person表对Address表左连接。既然要连接,那么就需要有一个参数来匹配,那就是PersonId。
需要select的信息
FirstName,LastName,City,State。
SQL查询:
select a.FirstName,a.lastName,b.City,b.State from Person a left join Address b on a.PersonId=b.PersonId;
第二高的薪水
题目:
筛选出排名第二高的薪水:
select distinct salary from Employee order by salary desc limit 1,1;
这个语句就实现了从Employee表中筛选出salary。distinct表示筛选出来的数据是不重复的;order by表示以某种方式进行排序;salary desc表示薪水降序;limit 1,1表示从下标1开始取一条记录;这里的第一个1是下标,它是从0开始的,第二个表示取几条记录,如果直接给一个数字比如limit 1表示从0开始取1条记录。
为筛选结果集命名
select (select distinct salary