SQL-每日一题【607.销售员】

题目

表: SalesPerson

SQL-每日一题【607.销售员】_第1张图片 

表: Company

SQL-每日一题【607.销售员】_第2张图片 

 表: Orders

SQL-每日一题【607.销售员】_第3张图片

编写一个SQL查询,报告没有任何与名为 “RED” 的公司相关的订单的所有销售人员的姓名。

以 任意顺序 返回结果表。

查询结果格式如下所示。

示例:

SQL-每日一题【607.销售员】_第4张图片

SQL-每日一题【607.销售员】_第5张图片 

SQL-每日一题【607.销售员】_第6张图片 

SQL-每日一题【607.销售员】_第7张图片 

解题思路

1.我们可以用子查询来解决这道题,首先我们查询出 company 表中 name = ’RED‘的com_id

2.然后查询 orders 表中的 com_id 属于我们第一步骤查询到的 com_id 对应的 sales_id

3.最后我们在 salesPerson 表中筛选出sales_id不属于我们第二步查询到的 sales_id即可

代码实现

select name from SalesPerson 
where sales_id not in
(select sales_id from orders where com_id in
(select com_id from company where name = 'RED'))

测试结果

SQL-每日一题【607.销售员】_第8张图片

你可能感兴趣的:(SQL每日一题,sql,数据库)