首页 > 数据库 >力扣607(MySQL)-销售员(简单)

力扣607(MySQL)-销售员(简单)

时间:2023-04-01 10:57:03浏览次数:38  
标签:607 int Company sales Orders 力扣 MySQL id

题目:

表: SalesPerson

 表: Company

 表: Orders

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

以 任意顺序 返回结果表。

查询结果格式如下所示。

示例:

 

 解释:

根据表 orders 中的订单 '3' 和 '4' ,容易看出只有 'John' 和 'Pam' 两个销售员曾经向公司 'RED' 销售过。
所以我们需要输出表 salesperson 中所有其他人的名字。

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/sales-person
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

解题思路:

建表语句:

1 create table if not EXISTS SalesPerson_607 (sales_id int(3),name varchar(12),salary int(6),commission_rate int(6),hire_date date);
2 create table if not EXISTS Company_607 (com_id int(3),name varchar(12),city varchar(12));
3 create table if not EXISTS Orders_607 (order_id int(3),order_date date,com_id int(3),sales_id int(3),amount int(6));
4 TRUNCATE table SalesPerson_607;
5 insert into SalesPerson_607 values(1,'John',100000,6,'2006-4-1'),(2,'Amy',12000,5,'2010-5-1'),(3,'Mark',65000,12,'2008-12-25'),(4,'Pan',25000,25,'2005-1-1'),(5,'Alex',5000,10,'2007-2-3');
6 TRUNCATE table Company_607;
7 insert into Company_607 values(1,'RED','Boston'),(2,'ORANGE','New York'),(3,'YELLOW','Boston'),(4,'GREEN','Austin');
8 TRUNCATE table Orders_607;
9 insert into Orders_607 values(1,'2014-1-1',3,4,10000),(2,'2014-2-1',4,5,5000),(3,'2014-3-1',1,1,50000),(4,'2014-4-1',1,4,25000);

这三个表给我看迷糊了,使用join 和 not in解决:

①首先将 Company 和 Orders 筛选出向公司 'RED' 销售过sales_id;

1  select sales_id
2   from Company_607 a
3   join Orders_607 b
4   on a.com_id = b.com_id
5   where a.name = 'RED'

 ②然后在SalesPerson表中排除上一步筛选出来的sales_id即可。

1 select name
2 from SalesPerson_607
3 where sales_id not in (
4   select sales_id
5   from Company_607 a
6   join Orders_607 b
7   on a.com_id = b.com_id
8   where a.name = 'RED'
9 )

 

标签:607,int,Company,sales,Orders,力扣,MySQL,id
From: https://www.cnblogs.com/liu-myu/p/17278214.html

相关文章

  • 《Mysql基础》【Mysql添加外键(新增外键)、mysql添加主键、mysql删除外键】 编程入门 学
    --mysql数据库程序设计笔记:--新建表:foreignkey加外键举例:createdatabasedb_test_1defaultcharactersetgb2312defaultcollategb2312_chinese_ci;usedb_test_1;createtablea(idintnotnullauto_incrementcomment'id自增',ainfovarchar(255),primarykey......
  • 《Mysql基础》【Mysql小数浮点数】double float decimal数据类型 编程入门 学习分享
    -- --mysql数据库程序设计笔记:-------------小数测试--------------------double浮点小数(最多小数位后15位,)使用8个字节存储。--float单精度小数:(最多小数位后6位)使用4个字节存储。--举例保留2位:float(18,2),或:double(20,2)--decimal(最多小数位后30位)(存储空间更优,更小,......
  • 《Mysql基础-1》【新建数据库】 【新建表】编程入门 学习分享 公开免费
    --mysql数据库程序设计笔记:--mysql安装路径my.ini中把:default-character-set=utf8改为default-character-set=gbk后重启客户端。--创建数据库:createdatabasedb_schooldefaultcharsetgb2312collategb2312_chinese_ci;usedb_school;--1、学生表:createtabletb_s......
  • 《Mysql基础》【供应商表】 编程入门 学习分享 【公开免费】
    --mysql数据库程序设计笔记:createdatabasedb_spdefaultcharactersetgb2312defaultcollategb2312_chinese_ci;usedb_sp;createtableS(SNOchar(5)comment'供应商编号',SNAMEvarchar(255)notnulluniquecomment'供应商名称,不为空且唯一',STATUSint(3)comm......
  • mysql中null与“空值”的坑
    字段属性的"空值"与"NULL"不一样相信很多用了MySQL很久的人,对这两个字段属性的概念还不是很清楚,一般会有以下疑问:1、我字段类型是notnull,为什么我可以插入空值2、为毛notnull的效率比null高3、判断字段不为空的时候,到底要select*fromtablewherecolumn<>''还是要用......
  • 力扣603(MySQL)-连续空余座位(简单)
    题目:几个朋友来到电影院的售票处,准备预约连续空余座位。你能利用表cinema,帮他们写一个查询语句,获取所有空余座位,并将它们按照seat_id排序后返回吗? 对于如上样例,你的查询语句应该返回如下结果。注意:seat_id字段是一个自增的整数,free字段是布尔类型(‘1’表示空余,‘0......
  • mysql分组并每组添加序号
    --模拟表select*fromtb_test;--rownum判断@pre_parent_code是否和当前的parent_code一样,true:让@i+=1false:重置@i--再定义一个变量@pre_parent_code:=''再存上一个parent_code,只要pre_parent_code不等于当前的parent_code让@i:=0else@i+=1就ok了-......
  • Oracle与Mysql 的区别(对比学习)
    Oracle与Mysql的区别(对比学习)使用范围Oracle是大型的数据库。Oracle是收费的,且价格昂贵Mysql是中小型数据库。Mysql是开源的安装部署Oracle有3G左右,且使用的时候Oracle占用特别大的内存空间和其他机器性能Mysql安装完后才152M端口用户Oracle默认端口1521,默认用户是s......
  • 202031607213-李蕊 实验一 软件工程准备--构建之法与博客首秀
    实验一软件工程准备一、实验介绍项目内容班级博客链接https://edu.cnblogs.com/campus/xbsf/2020CSSE本次作业要求链接https://edu.cnblogs.com/campus/xbsf/2020CSSE/homework/12938我的课程学习目标(1)学习博客园软件开发者学习社区使用技巧和经验。(2)了解Gi......
  • 202031607211-米乐 实验一 软件工程准备—初步认识软件工程
    实验一软件工程准备项目内容班级博客链接2023年春软件工程(2020级计算机科学与技术)本次作业要求链接实验一软件工程准备我的课程学习目标学会使用博客园进行学习、了解Github的基本操作、阅读《现代软件工程——构建之法》本次作业帮我实现的学习目标能够......