问题

给定表 customer ,里面保存了所有客户信息和他们的推荐人。

+------+------+-----------+
| id   | name | referee_id|
+------+------+-----------+
|    1 | Will |      NULL |
|    2 | Jane |      NULL |
|    3 | Alex |         2 |
|    4 | Bill |      NULL |
|    5 | Zack |         1 |
|    6 | Mark |         2 |
+------+------+-----------+

写一个查询语句,返回一个客户列表,列表中客户的推荐人的编号都 不是 2。

结果示例

对于上面的示例数据,结果为:

+------+
| name |
+------+
| Will |
| Jane |
| Bill |
| Zack |
+------+

解答思路

一开始拿到这个题的做法是:

# Write your MySQL query statement below
SELECT name
FROM customer
WHERE referee_id <> 2;

但是结果报错,发现所有referee_idNULL的数据都被忽略了。同样,使用过滤条件 WHERE referee_id <> 2 OR referee_id = NULL也是错的,为什么?
查了一些解答,总结一下:

首先,来了解一下 MySQL背后的三值逻辑:TRUEFALSEUNKOWN
TRUEFALSE很好理解,真和假。
对于UNKOWNNULL,也有一个非常通俗的解释(来源于文末参考链接中的橡树

【SQL】leetcode 584.寻找用户推荐人(知识点:SQL的三值逻辑)相关推荐

  1. Leetcode 584 寻找用户推荐人(SQL)

    题目: 给定表 customer ,里面保存了所有客户信息和他们的推荐人. +------+------+-----------+ | id   | name | referee_id| +----- ...

  2. leetcode584. 寻找用户推荐人(SQL)

    给定表 customer ,里面保存了所有客户信息和他们的推荐人. +------+------+-----------+ | id   | name | referee_id| +------+-- ...

  3. 584. 寻找用户推荐人

    SQL架构 给定表 customer ,里面保存了所有客户信息和他们的推荐人. +------+------+-----------+ | id | name | referee_id| +----- ...

  4. 584 寻找用户推荐人

    题目描述: SQL架构 给定表 customer ,里面保存了所有客户信息和他们的推荐人. 写一个查询语句,返回一个编号列表,列表中编号的推荐人的编号都 不是 2. 对于上面的示例数据,结果为: 方法 ...

  5. Leecode- 584. 寻找用户推荐人

    584. 寻找用户推荐人给定表 customer ,里面保存了所有客户信息和他们的推荐人. +------+------+-----------+ | id | name | referee_id| ...

  6. ​LeetCode刷题实战584:寻找用户推荐人

    算法的重要性,我就不多说了吧,想去大厂,就必须要经过基础知识和业务逻辑面试+算法面试.所以,为了提高大家的算法能力,这个公众号后续每天带大家做一道算法题,题目就从LeetCode上面选 ! 今天和大家 ...

  7. Leetcode-SQL学习计划-SQL入门-584:寻找用户推荐人

    建表语句: Create table If Not Exists Customer (id int, name varchar(25), referee_id int) Truncate table ...

  8. 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 6丨寻找用户推荐人【难度简单】

      活动介绍: 「数据仓库技术交流群」已经正式启动每日SQL打卡,帮助大家扎实基础,努力工作之余,别忘了自我提升. 欢迎报名和邀请小伙伴参与,一个人可能走得很快,但一群人会走得很远.

  9. oracle某用户历史sql语句,查看oracle 用户执行的sql语句历史记录

    select * from v$sqlarea t where t.PARSING_SCHEMA_NAME in ('用户名') order by t.LAST_ACTIVE_TIME desc se ...

最新文章

  1. ntbackup 创建卷影复制:ffffffff 时出现错误
  2. http sxyk.cdn_Discuz x3 开启cdn和https后链接修改教程
  3. Java笔记-连接本地代理服务
  4. 从Word,Excel中提取Flash
  5. shell 批量修改文件名字
  6. python备注(持续更新……)
  7. pdf转HTML出现乱码,PDF转Word出现乱码解决方法
  8. 递归算法经典实例python-Python实现经典递归算法
  9. Beetl的基本用法
  10. snkrs抽签协议获取
  11. mysql脏读和幻读区别_数据库的脏读、不可重复读和幻读区别
  12. 行行出状元,大学毕业生卖煎饼月入13万
  13. zoc license code
  14. JavaScript学习笔记[红皮书]
  15. 博弈论一 [ 巴什博奕 ]
  16. 解决nvcc --version显示command not found问题
  17. 软考嵌入式系统工程师的十大建议
  18. 机器人操作系统ROS—深度相机+激光雷达实现vSLAM建图与导航 转载
  19. 中兴 s291 android5,ZTE 中兴 S291 天机 Grand SII (S2) 使用小结——刷机需谨慎(附中兴S291刷机全攻略)...
  20. 【数据结构与算法】第三篇:题型积累

热门文章

  1. firefox 绿色护眼
  2. 网络安全漏洞原理利用与渗透
  3. graphql_在GraphQL社区中发现很棒的女工程师
  4. 求出小于45岁的各个老师所带的大于12岁的学生人数
  5. WebView的白屏检测与处理
  6. Mycat快速入门(一): Mycat简介
  7. kafka伪集群搭建
  8. Depix:还原马赛克工具的试用及总结
  9. 黑马程序员 IO流
  10. 华为畅享z和畅享20pro有什么区别