下列小题使用如下3个表: 客户(客户号,名称,联系人,地址,电话号码) 产品(产品号,名称,规格说明,单价) 订购单(订单号,客户号,产品号,数量,订购日期) 查询订购单的数量和所有订购单的平均金额,正确命令是( )。

admin2013-11-12  44

问题 下列小题使用如下3个表:
客户(客户号,名称,联系人,地址,电话号码)
产品(产品号,名称,规格说明,单价)
订购单(订单号,客户号,产品号,数量,订购日期)
查询订购单的数量和所有订购单的平均金额,正确命令是(    )。

选项 A、SELECT COUNT(DISTINCT订单号),AVG(数量*单价)FROM产品JOIN订购单ON产品.产品号=订购单.产品号
B、SELECT COUNT(订单号),AVG(数量*单价)FROM产品JOIN订购单ON产品.产品号=订购单.产品号
C、SELECT COUNT(DISTINCT订单号),AVG(数量*单价)FROM产品,订购单ON产品.产品号=订购单.产品号
D、SELECT COUNT(订单号),AVG(数量*单价)FROM产品,订购单ON产品.产品号=订购单.产品号

答案A

解析 这是一个连接查询,要用到JOIN 0N语句,同时要用汇总函数和平均数函数。SQL不仅具有一般的检索能力,而且还有计算方式的检索。用于计算检索的函数有:COUNT(计数)、SUM(求和)、AVG(计算平均值)、MAX(求最大值)、MIN(求最小值)。查询订购单的数量,只要统计订购单表中的订单号的个数,所以应使用COUNT计数函数,再使用DISTINCT关键字去掉重复值,故选项B、D均不正确。计算所有订购单的半均金额,可以通过AVG(单价*数量)函数,单价字段在产品表中,数量字段在订购单表中,所以必须指明两个表的连接字段,两个表通过产品号公共字段进行连接,在指定连接字段时可以用WHERE指定连接条件也可以用超连接关键字JOIN表示普通连接,即只有满足连接条件的记录才出现在查询结果巾,JOIN后面用ON子句指定连接条件,所以选项C不正确,正确的答案是选项A。
转载请注明原文地址:https://jikaoti.com/ti/CPT0FFFM
0

最新回复(0)