Leetcode-sql-nine
本文中主要是介绍LeetCode中关于SQL的练习题,从易到难,循序渐进。文中会介绍题目和尽可能多的提供解答方案
根据下面提供的两个表,选出所有奖金<1000元的雇员姓名及奖金数额

显示结果应该为:

left right;需要考虑为null的情况-- 自己的方案:需要考虑NULL的情况
select name, bonus
from employee e
left join bonus b on e.empId = b.empId
where bonus < 1000 or bonus is null;ifnull函数IFNULL(exp1,exp2) 函数用于判断exp1是否为 NULL,如果为 NULL 则返回exp2的值,如果不为NULL 则返回exp1的值using关键字的使用select name, bonus
from employee left join bonus using (empId) -- 如果两个表中有相同的字段,则可使用using关键字
where ifnull(bonus, 0) < 1000; --在下面给定的表中,保存了所有客户信息和他们的推荐人。写一个查询语句,返回一个编号列表,列表中编号的推荐人的编号都不是2

上面示例的结果为:

需要通过where条件进行判断,不要忘记NULL的情形
select name
from customer
where referee_id != 2 or referee_id is null; -- 自己没有考虑NULL的情况