美文网首页
Leetcode1350. 院系无效的学生(简单)

Leetcode1350. 院系无效的学生(简单)

作者: kaka22 | 来源:发表于2020-07-22 15:24 被阅读0次

题目
院系表: Departments

+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| id            | int     |
| name          | varchar |
+---------------+---------+

id 是该表的主键
该表包含一所大学每个院系的 id 信息

学生表: Students

+---------------+---------+
| Column Name   | Type    |
+---------------+---------+
| id            | int     |
| name          | varchar |
| department_id | int     |
+---------------+---------+

id 是该表的主键
该表包含一所大学每个学生的 id 和他/她就读的院系信息

写一条 SQL 语句以查询那些所在院系不存在的学生的 id 和姓名

可以以任何顺序返回结果

下面是返回结果格式的例子

Departments 表:

+------+--------------------------+
| id   | name                     |
+------+--------------------------+
| 1    | Electrical Engineering   |
| 7    | Computer Engineering     |
| 13   | Bussiness Administration |
+------+--------------------------+

Students 表:

+------+----------+---------------+
| id   | name     | department_id |
+------+----------+---------------+
| 23   | Alice    | 1             |
| 1    | Bob      | 7             |
| 5    | Jennifer | 13            |
| 2    | John     | 14            |
| 4    | Jasmine  | 77            |
| 3    | Steve    | 74            |
| 6    | Luis     | 1             |
| 8    | Jonathan | 7             |
| 7    | Daiana   | 33            |
| 11   | Madelynn | 1             |
+------+----------+---------------+

结果表:

+------+----------+
| id   | name     |
+------+----------+
| 2    | John     |
| 7    | Daiana   |
| 4    | Jasmine  |
| 3    | Steve    |
+------+----------+

John, Daiana, Steve 和 Jasmine 所在的院系分别是 14, 33, 74 和 77, 其中 14, 33, 74 和 77 并不存在于院系表

解答
选出student表中department_id不在departments表中的记录

select S.id, S.name
from Students as S
where S.department_id not in (select D.id
from Departments as D)

左连接也可以

SELECT Students.id, Students.name 
FROM Students LEFT JOIN Departments ON Students.department_id = Departments.id 
WHERE Departments.id is null;

相关文章

  • Leetcode1350. 院系无效的学生(简单)

    题目院系表: Departments id 是该表的主键该表包含一所大学每个院系的 id 信息 学生表: Stud...

  • leetcode数据库类型:1350.院系无效的学生,难度:简单

    leetcode数据库类型:1350.院系无效的学生,难度:简单 解答: 这道题目首先使用左外连接,将dep...

  • 【小说连载】油菜花的故乡60

    大学里有一个重要的学生组织——学生会。学校有校学生总会,每一个院系都有院系学生会。这学生会是干嘛的呢?简单来说,学...

  • 简单,无效

    原创‖茹云 明明简单的一个人,最后滔浪在人海中,也开始复杂起来,不知道情绪也可以伪装的不为人知。 很多人喊累,是真...

  • SQL server 约束

    1、 创建院系表department,包含院系编号dno,院系名dname,其中dno为主键,且院系名不能为空。 ...

  • 卜算子 上课难

    题目简单单, 引导学生看。 习作经常仔细评, 无效师悲叹。 基础未夯牢, 上课真难办。 脑胀唇干把水喝, 不敢高声喊。

  • Day 1 - B19553 - networking emai

    (给目标学校系主任发邮件,询问对方学校是否有意愿与自己所在的院系合作开展学生交流项目) Requesting In...

  • 加入学生会,你恐怕上当了

    入学伊始,我就迫不及待地加入了我所在院系的学生会。早在高中就听说大学的学生会是大学里很厉害的组织,能加入学生会的学...

  • Mysql练习

    查询student表的第2条到4条记录 从student表查询所有学生的学号(id)、姓名(name)和院系(de...

  • 图解Java设计模式之组合模式

    @TOC 看一个学校院系展示需求 编写程序展示一个学校院系结构 :需求是这样,要在一个页面中展示出学校的院系组成,...

网友评论

      本文标题:Leetcode1350. 院系无效的学生(简单)

      本文链接:https://www.haomeiwen.com/subject/eaxtlktx.html