sql经典题目

1.编写一个 SQL 查询,查找所有至少连续出现三次的数字。

例如,给定上面的 Logs 表, 1 是唯一连续出现至少三次的数字。

select distinct L1.Num ConsecutiveNums from Logs L1,Logs L2,Logs L3 where L1.id=L2.id+1 and L2.id+1=L3.id+2 and L1.num=L2.num and L2.num=L3.num;

2.用一条SQL 语句 查询出每门课都大于80 分的学生姓名

select name from table group by name having min(grade) > 80

3.合并两个表

编写一个 SQL 查询,满足条件:无论 person 是否有地址信息,都需要基于上述两表提供 person 的以下信息: FirstName, LastName, City, State

select firstName,LastName,City,State from Person a left join Address b on a.PersonId = b.PersonId;

4.编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary)

select IFNULL((select distinct(Salary) from Employee order by Salary desc limit 1,1),null) as SecondHighestSalary

你可能感兴趣的:(sql经典题目)