sql查询语句学习测试答案

温柔似野鬼°
703次浏览
2021年02月13日 08:21
最佳经验
本文由作者推荐

-

2021年2月13日发(作者:神探夏洛克电影)


第一部分


SQL


查询语句的学习



单表查询



1



--


查询订购日期在


19 96



7



1


日至


1996



7



15


日之间的订单的订购日期、




ID


、客 户


ID


和雇员


ID

等字段的值



use


eee


SELECT



订购日期


,


订单


ID


,


客户


ID


,


雇员

< p>
ID


FROM



订单



WHERE



订购日期


BETWEEN




'1996-7-1 00:00:00'



AND



'1996-7-15 23:59:59'




2



--< /p>


查询


“Northwind”


示例数据库 中供应商的


ID


、公司名称、地区、城市和电话字段的


值。条件是



地区等于华北


并且



联系人头衔等于销售代表





use


eee


SELECT



供应商


ID


,


公司名称


,

< p>
地区


,


城市


,

< p>
电话



FROM



供应商



WHERE



地区

=


'


华北


'



AND



联系人职务


=


'


销售代表


'




3



--


查询


“Northwind”


示例数据库中供应商的


ID


、公司名称、地区、 城市和电话字段的


值。其中的一些供应商位于华东或华南地区,另外一些供应商所在的城 市是天津



use


eee


SELECT



供应商


ID


,


公司名称


,

< p>
地区


,


城市


,

< p>
电话



FROM



供应商



WHERE



地区

IN(


'


华东


'

< br>,



'


华南

'


)



OR



城市


=


'


天津


'



4



--


查询


“Northwind”


示例数据库中位于


华东





华南



地区的供应商的

< p>
ID


、公司名称、


地区、城市和电话字段的值



use


eee


SELECT



供应商


ID


,


公司名称


,

< p>
地区


,


城市


,

< p>
电话



FROM



供应商



WHERE



地区

IN(


'


华东


'

< br>,



'


华南

'


)





多表查询



5



--


查询订购日期在


1996



7



1

< p>
日至


1996



7



15


日之间的订单的订购日期、

< p>



ID


、相应订单的客 户公司名称、负责订单的雇员的姓氏和名字等字段的值,并将查询结


果按雇员的



姓氏



< p>


名字



字段的升序排列 ,



姓氏





名字



值相 同的记录按



订单


< br>ID”



降序排列



use


eee


SELECT



订购日期


,


订单


ID


,


公司名称


,


姓氏


,


名字



FROM



订单


,


雇员


,


客户



WHERE



订购日期


BETWEEN



'1996-7-1 00:00:00'



AND



'1996-7-15 23:59:59'



AND



订单


.


雇员


ID


=



雇员


.< /p>


雇员


ID



AND



订单


.


客户


ID


=



客户


.< /p>


客户


ID


ORDER



BY



姓氏


,


名字


ASC


,


订单


ID


DESC



6



--


查询


“10248”



“10254”

< br>号订单的订单


ID


、运货商的公司名称、订单上所订购的 产


品的名称



use


eee


SELECT



订单

< br>.


订单


ID


,

< br>公司名称


,


产品名称



FROM



订单


,


运货商


,


产品

,


订单明细



WHERE



订单

.


订单


ID


IN(


'10248'


,


'10254'

< br>)



AND



订单


.


订单


ID


=



订单明细


.


订单


ID



AND



订单明细

.


产品


ID


=



产品


.< /p>


产品


ID



AND



订单


.


运货商


=



运货商


.


运货商


ID



7



--< /p>


查询


“10248”


< br>“10254”


号订单的订单


ID


、订单上所订购的产品的名称、数量、单


价和折扣



use


eee


SELECT



订单

< br>.


订单


ID


,

< br>产品名称


,


数量


,


订单明细


.


单价


,


折扣



FROM



订单


,


产品


,


订单明细



WHERE



订单

.


订单


ID


IN(


'10248'


,


'10254'

< br>)



AND



订单


.


订单


ID


=



订单明细


.


订单


ID



AND



订单明细

.


产品


ID


=



产品


.< /p>


产品


ID



8



--


查询


“ 10248”



“10254”


号订单 的订单


ID


、订单上所订购的产品的名称及其销售金

< p>



use


eee


SELECT



订单

< br>.


订单


ID


,

< br>产品名称


,


数量


*


订单明细


.


单价


*(


1


-


折扣


)



AS



销售金额



FROM



订单


,


产品


,


订单明细

< br>


WHERE



订单

< p>
.


订单


ID


IN(


'10248'


,


'10254'


)



AND



订单


.


订单


ID


=



订单明细


.


订单


ID



AND



订单明细

.


产品


ID


=



产品


.< /p>


产品


ID



综合查询



9



--


查询所有运货商的公司名称和电话



use


eee


SELECT



公司名称


,


电话



FROM



运货商




1 0



--


查询所有客户的公司名称、电 话、传真、地址、联系人姓名和联系人头衔



use


eee


SELECT



公司名称


,


电话


,


传真


,


地址


,


联系人姓名


,


联系人职务



FROM



客户




11



--


查询单价介于

< br>10



30


元的所有产品的产品


ID


、产品名称和库存量



use


eee


SELECT



产品

< br>ID


,


产品名称


,


库存量



FROM



产品



WHERE



单价


BETWEEN


10


AND


30


12



--


查询单价大于


20


元的所有产品的产品名称、单价以及供应商的公司名称、电话



use


eee


SELECT



产品名称


,


单价


,


公司名称


,


电话



FROM



产品


,


供应商



WHERE



单价


>


20


AND



产品


.


供应商


ID


=



供应商


.


供应商


ID




13



--


查询上海和北京的客户在


1996


年订 购的所有订单的订单


ID


、所订购的产品名称和


数量



use


eee


SELECT



订单

< br>.


订单


ID


,

< br>产品名称


,


数量



FROM



产品


,


订单


,


订单明细

< br>,


客户



WHERE



城市


IN



(


'


上海


'


,< /p>


'


北京


'


)



AND



YEA R


(


订购日期


)=

1996



AND


< p>
产品


.


产品


ID


=



订单明细


.


产品


ID


AND



订单


.


订单


ID


=



订单明细


.


订单


ID




AND



订 单


.


客户


ID


=



客户


.< /p>


客户


ID



1 4



--


查询华北客户的每份订单的订 单


ID


、产品名称和销售金额



use


eee


SELECT



订单

< br>.


订单


ID


,

< br>产品名称


,


数量


*


订单明细


.


单价


*(


1


-


折扣


)


AS



销售金额



FROM



产品


,


订单


,


订单明细

< br>,


客户



WHERE



地区


=



'


华北


'





AND



产品


.


产品


I D


=



订单明细

.


产品


ID


AND



订单


.


订单


ID


=



订单明细


.


订单


ID



AND



订单


.


客户


ID


=



客户


.< /p>


客户


ID




15



--


按 运货商公司名称,统计


1997


年由各个运货商承运的订单的总 数量



use


eee


SELECT



公司名称


,


COUNT


(


订单


ID


)



AS



订单总数量



FROM



订单


,


运货商



WHERE



YEAR


(


发货日期


)=


1997


AND



订单


.


运货商


=



运货商


.


运货商


ID


GROUP



BY



公司名称




16



--


统计


1997


年上半年的每份订单上所订购的产品的总数量



use


eee


SELECT



订单

< br>.


订单


ID


,

< br>SUM


(


数量


)



AS



总数量



FROM



订单


,


订单明细



WHERE



订购日期



BETWEEN



'1997-1-1 00:00:00'



AND



'1997-6-30 23:59:59'


AND



订单


.


订单


ID


=



订单明细


.


订单


ID


GROUP



BY



订单


.


订单


ID



17



--


统计各类产品的平均价格< /p>



use


eee


SELECT



类别名称


,


SUM


(


单价

< p>
*


库存量


)/


SUM


(


库存量


)



AS


FROM



产品


,


类别



WHERE



产品

.


类别


ID


=



类别


.< /p>


类别


ID


GROUP



BY



类别名称




18



--


统计各地区客户的总数量< /p>



use


eee


SELECT



地区

< br>,


COUNT


(


客户

< p>
ID


)



AS



客户数量



FROM



客户



GROUP



BY



地区




平均价格





第二部分


SQL

查询强化测试



1.



找出供应商名称,所在城市



use


eee


SELECT



公司名称


,


城市



FROM



供应商




2.



找出华北地区能够供应海鲜的所有供应商列表。



use


eee


SELECT



公司名称



FROM



供应商

,


类别


,


产品


WHERE



地区


=


'


华北


'


AND



类别名称

=


'


海鲜


'


AND



产品


.


类别


ID


=



类别


.< /p>


类别


ID


AND



产品


.


供应商


ID


=



供应商


.


供应商


ID



3.



找出订单销售额前五的订单是经由哪家运货商运送的。



use


eee


SELECT



TOP


(


5


)


订单

< br>.


订单


ID


,

< br>SUM


(


订单明细


.

< p>
单价


*(


1


-

< p>
折扣


)*


数量


)



AS



销售额


,


公司名称



FROM



订单


,


订单明细


,


运货商



WHERE



订单


.


订单


ID


=



订单明细


.


订单


ID


AND



订单


.


运货商


=



运货商


.


运货商


ID


GROUP



BY



订单


.


订单


ID


,


公 司名称



ORDER



BY



销售额


DESC

-


-


-


-


-


-


-


-