SQL语句实践示例四找到销售促销中最高的销售人员

SQL语句实践示例四找到销售促销中最高的销售人员
复制代码代码如下所示:
-找到销售促销的最高销售人员
你刚刚在一家服装销售公司找到了一份工作,经理让你从数据库中的两张表中得到促销。
--- 1。一个是促销桌。
--- 2。一个是销售清单。
创建表的促销活动

活动nvarchar(30),
姓名日期
EDATE DateTime

插入促销
选择51提升,'2011-5-1 ','2011-5-7
联盟
选择十一提升,'2011-10-1 ','2011-10-7
联盟
select'oa特殊事件,'2011-6-1 ','2011-6-7

创建表的销售

id不是空的,
姓名nvarchar(20),
saledate DateTime,
价格的钱


将销售
Select 1, 'king five','2011-5-1', 1000 Union
选择1,王五,'2011-5-2 ',2000联盟
选择1,王五,'2011-5-3 ',3000联盟
选择1,王五,'2011-5-4 ',4000联盟
选择1,张三,'2011-5-1 ',1000联盟
Select 1, 'Zhang three','2011-5-3', 2000 Union
选择1,张三,'2011-5-4 ',4000联盟
选择1,李四,'2011-5-6 ',1000联盟
选择1,赵六,'2011-5-5 ',1000联盟
选择1,钱七,'2011-5-8 ',1000联盟

选择1,阳光五,'2011-6-1 ',1000联盟
选择1,阳光五,'2011-6-2 ',2000联盟
选择1,王五,'2011-6-3 ',3000联盟
选择1,阳光五,'2011-6-4 ',4000联盟
选择1,张三,'2011-6-1 ',11000联盟
选择1,张三,'2011-6-3 ',20000联盟
选择1,张三,'2011-6-4 ',4000联盟
选择1,李四,'2011-6-6 ',1000联盟
选择1,赵六,'2011-6-5 ',1000联盟
选择1,钱七,'2011-6-8 ',1500联盟

选择1,阳光五,'2011-10-1 ',11000联盟
选择1,阳光五,'2011-10-2 ',12000联盟
选择1,王五,'2011-10-3 ',9000联盟
选择1,阳光五,'2011-10-4 ',4000联盟
选择1,张三,'2011-10-1 ',11000联盟
选择1,张三,'2011-10-3 ',2000联盟
选择1,张三,'2011-10-4 ',4000联盟
选择1,李四,'2011-10-6 ',27000联盟
选择1,赵六,'2011-10-5 ',9000联盟
选择1,钱七,'2011-10-8 ',3000

-我们需要发现,在每次促销中,总销售额大于等于。
-所有其他员工销售人员和促销活动。
描述:A2。名称> a.name其他人员查询谓词将全部
Is the predicate Between subquery in ensuring that we are using the correct date of promotion

-方法1:
选择a.name,b.activity,和(a.price)为总价
从A销售,晋升为B
在a.saledate b.sdate和b.edate之间
Group by a.name, b.activity
总(价格)全部(从销售A2中选择> =(和)价格
其中A2。名称> a.name和a2.saledate之间

选择姓名从促销活动= b.activity B2,B2。

和(选择促销B3 EDATE)
在B3。活动= b.activity)
组由A2。名称)
一轮又一轮

-方法二:
-解释:如果促销时间没有重叠,那么促销表中只有一个主键列,所以在组中
使用(活动、姓名、EDATE)的条款将不会改变。但这将使HAVING子句使用姓名和EDATE
选择a.name,b.activity,和(a.price)为总价
从A销售,晋升为B
在a.saledate b.sdate和b.edate之间
通过b.activity,b.sdate,b.edate组,a.name
总(价格)全部(从销售A2中选择> =(和)价格
其中A2。名称> a.name和a2.saledate之间
b.sdate
和b.edate
组由A2。名称)



-方法三:
——使用CTE(SQL 2005的后版本)
与clearkstotal(名称、活动、总价)为

选择a.name,b.activity,金额(价格)
从A销售,促销B
在a.saledate b.sdate和b.edate之间
集团通过a.name,b.activity


选择c1.name,c1.activity,c1.totalprice
从clearkstotal C1
在总价=(选择最大(C2。总价)从clearkstotal C2
其中活动= C2活动)

删除表的促销活动

表销售下降

免责声明:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
相关文章
返回顶部