设有商品表(商品号,商品名,单价) 和销售表(商品号,销售时间,销售数量)。现要查询单价高于100元的全部商品的销售总次数和总数量,包括没有被卖出过的商品(没有被卖出过的商品的销售总次数和总数量置为0) 。请补全如下语句:SELECT商品表。商品号,销售总次数= (9) ,销售总数量=SUM(销售数量)FROM商品表 (10) 销售表0N商品表。商品号=销售表。商品号WHERE单价>100GROUP BY商品表。商品号(9)

题目

设有商品表(商品号,商品名,单价) 和销售表(商品号,销售时间,销售数量)。现要查询单价高于100元的全部商品的销售总次数和总数量,包括没有被卖出过的商品(没有被卖出过的商品的销售总次数和总数量置为0) 。请补全如下语句:

SELECT商品表。商品号,销售总次数= (9) ,

销售总数量=SUM(销售数量)

FROM商品表 (10) 销售表

0N商品表。商品号=销售表。商品号

WHERE单价>100

GROUP BY商品表。商品号

(9)


相似考题

1.设商场业务系统中有销售单据表(销售单据号, 收款员, 销售时间),销售明细表(销售明细条目号, 销售单据号, 商品号, 数量, 单位, 金额)和商品表(商品号, 商品名, 价格)。该系统业务繁忙,保存的数据量非常大,每次换班时要统计收款员的收入总额,每天停业后要统计各个商品的当天销售量,销售过程中经常需要查询某笔销售业务的情况。为了优化系统性能,下列优化方案合理的是A.在销售单据表的收款员属性上建立聚集索引,在销售明细表的销售单据号属性上建立非聚集索引,在商品表的商品号属性上建立聚集索引B.在销售单据表的销售单据号属性上建立聚集索引,在销售明细表的销售单据号属性上建立非聚集索引,在商品表的商品号属性上建立聚集索引,建立收款员单班销售量表和商品当天销售汇总表,在每笔销售成交后分别累计统计相应数据C.在销售单据表的销售时间属性和收款员属性上分别建立聚集索引,在销售明细表的销售单据号属性上建立非聚集索引,在商品表的商品号属性上建立聚集索引,建立收款员单班销售量表和商品当天销售汇总表,在每笔销售成交后分别累计统计相应数据D.在销售单据表的销售单据号属性和收款员属性上分别建立聚集索引,在销售明细表的商品号属性上建立聚集索引

3.设商场业务系统中有销售单据表(销售单据号,收款员,销售时间),销售明细表(销售明细条目号,销售单据号,商品号,数量,单位,金额)和商品表(商品号,商品名,价格)。该系统业务繁忙,保存的数据量非常大,每次换班时要统计收款员的收入总额,每天停业后要统计各个商品的当天销售量,销售过程中经常需要查询某笔销售业务的情况。为了优化系统性能,下列优化方案合理的是______。A) 在销售单据表的收款员属性上建立聚集索引,在销售明细表的销售单据号属性上建立非聚集索引,在商品表的商品号属性上建立聚集索引B) 在销售单据表的销售单据号属性上建立聚集索引,在销售明细表的销售单据号属性上建立非聚集索引,在商品表的商品号属性上建立聚集索引,建立收款员单班销售量表和商品当天镑售汇总表,在每笔销售成交后分别累计统计相应数据C) 在销售单据表的销售时间属性和收款员属性上分别建立聚集索引,在销售明细表的销售单据号属性上建立非聚集索引,在商品表的商品号属性上建立聚集索引,建立收款员单班销售量表和商品当天销售汇总表,在每笔销售成交后分别累计统计相应数据D) 在销售单据表的销售单据号属性和收款员属性上分别建立聚集索引,在销售明细表的商品号属性上建立聚集索引A.B.C.D.

更多“设有商品表(商品号,商品名,单价) 和销售表(商品号,销售时间,销售数量)。现要查询单价高于100元的全部商品的销售总次数和总数量,包括没有被卖出过的商品(没有被卖出过的商品的销售总次数和总数量置为0) 。请补全如下语句:SELECT商品表。商品号,销售总次数= (9) ,销售总数量=SUM(销售数量)FROM商品表 (10) 销售表0N商品表。商品号=销售表。商品号WHERE单价>100GROUP BY商品表。商品号(9)”相关问题
  • 第1题:

    在SQL Server 2008中,设某数据库中有商品表(商品号,商品名,进货价格),商品号为主码;销售表(商品号,销售时间,销售数量,销售价格,本次利润),商品号和销售时间为主码,销售价格为本次销售商品的单价。现要求每当在销售表中插入前4列数据时(假设一次只插入一行数据),系统自动计算本次销售产生的利润,并将该利润赋给销售表的第5列“本次利润”。请编写实现上述功能的后触发型触发器代码。(10分)


    正确答案:
    【解题思路】触发器是用户定义在关系表上的一类由事件驱动的特殊过程。一旦定义,任何用户对表的增、删、改操作均由服务器自动激活相应的触发器,在DBMS核心层进行集中的完整性控制。触发器类似于约束,但比约束更加灵活,可以实施比FOREIGN KEY约束、CHECK约束更为复杂的检查和操作,具有更精细和强大的数据控制能力。触发器的创建格式:CREATE TRIGGER[schema_name.]trigger_nameON{tablelview}{FORlAFFERIINSTEAD OF}{[INSERT][,][UPDATE][,][DELETE]}AS{Sql_statement}[;]对应于本题中,触发事件为在销售表中插入前四列,条件为无条件执行,触发体动作为计算本次利润并插入表中。【参考答案】CREATE TRIGGER calcu_productAFTER INSERT ON销售表FOR EACH ROWAS BEGINDECLARE@PurchasePrise float/*对应商品的进价的参数*/SELECT@PurchasePrise=进货价格FROM商品表WHERE商品号=new.商品号UPDATE销售表SET本次利润=new.销售数量*(new.销售价格-@PurchasePrise)WHERE商品号=new.商品号AND销售时间=New.销售时间/*因为是行级触发器,所以可以使用更新后的新值,用new*/END

  • 第2题:

    在各种数据环境中,粒度用于描述数据的综合程度。设某系统中有商品销售表(商品号,销售量,单价,日期,时间) 和商品周销售表(商品号,周销售量,周) ,则商品销售表的粒度级要 (7) 于商品周销售表的粒度级。若两个表的时间跨度相同,则商品销售表中存放的数据量要 (8) 于商品周销售表的数据量。

    (7)


    正确答案:低

  • 第3题:

    有某商场的销售记录(日期、商品名称、商品单价、销售数量),要查询每天的销售情况,以下正确的SQL语句是( )。

    A. SELECT*FROM销售记录0RDER BY日期

    B. SELECT*FROM销售记录GROUP BY日期

    C. SELECT日期,SUM(销售数量)AS销售总数量,SUM(销售数量*商品单价)销售总额FROM销售记录0RDER BY日期

    D. SELECT日期,SUM(销售数量)AS销售总数量,SUM(销售数量)*SUM(商品单价)销售总额FROM销售记录0RDER BY日期


    正确答案:C
    SQL语句中GROUP BY子句用于对记录按组进行分组,常用于分组统计。使用GROUP BY时,只能查询分组的元素和计算函数,不能查询表的所有记录,故B不正确;c中SUM(销售数量)统计每天的销售量,销售数量。商品单价是每条记录的销售额,SUM(销售数量)*SUM(商品单价)是每天的销售总额;D中SUM(商品单价)是把每天的记录单价相加,没有实际意义。故本题答案是C。

  • 第4题:

    设有购买表(顾客号,商品号,购买时间)。现要查询顾客A与顾客B购买的相同商品。有下列查询语句:Ⅰ.SELECT商品号FROM购买表WHERE顾客号=ˊAˊAND商品号IN(SELECT商品号FROM购买表WHERE顾客号=ˊBˊ)Ⅱ.SELECT商品号FROM购买表WHERE顾客号=ˊA ˊEXCEPTSELECT商品号FROM购买表WHERE顾客号=ˊBˊⅢ.SELECT商品号FROM购买表WHERE顾客号=ˊAˊINTERSECTSELECT商品号FROM购买表WHERE顾客号=ˊBˊⅣ.SELECT商品号FROM购买表WHERE顾客号=ˊA ˊUNl0NSELECT商品号FROM购买表WHERE顾客号=ˊB ˊ上述语句中,能够实现该查询要求的是( )。

    A.仅Ⅰ和Ⅱ

    B.仅Ⅰ和Ⅲ

    C.仅Ⅰ和Ⅳ

    D.仅Ⅲ


    正确答案:B
    SQL中的集合操作符IN、EXCEPT、INTERSECT和UNION的用法分别为:①IN,确定给定的值是否与子查询或列表中的值相匹配,选择与列表中的任意一个值匹配的行;②EXCEPT,指在第一个集合中存在,但是不存在于第二个集合中的数据;③INTERsECT,是指在两个集合中都存在的数据;④UNION.操作符用于合并两个或多个SELECT语句的结果集,对于UNION操作符,请注意,UNION内部的SELECT语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条SELECT语句中的列的顺序必须相同。要返回A和B相同的商品,则选项I中先查出B购买的商品号,并且使用IN操作符,查出A购买的商品号且该商品号同时也在B购买的商品号结果集中,即满足了A和B都购买的商品号,符合要求。选项Ⅱ中的EXCEPT操作符使得查询出的结果为A购买的商品减去B购买的商品,不符合要求。选项Ⅲ的IN.TERSECT操作符表示两个结果集都存在的商品号,即既属于A又属于B的商品号,符合要求。选项Ⅳ中的UNION操作符表示两个结果集的合并,即包括A购买的商品也包括B购买的商品,不符合要求。

  • 第5题:

    设有购买表(顾客号,商品号,购买时间)。现要查询2012年顾客A购买了但顾客B没有购买的商品。有下列查询语句:1.SELECT商品号FROM购买表WHERE YEAR(购买时间)=ˊ2012ˊAND顾客号=ˊA ˊAND商品号NOT IN(SELECT商品号FROM购买表WHERE YEAR(购买时间)=ˊ2012ˊAND顾客号=ˊB ˊ)11.SELECT商品号FROM购买表WHERE YEAR(购买时间)= ˊ2012ˊAND顾客号=ˊAˊEXCEPTSELECT商品号FROM购买表WHERE YEAR(购买时问)= ˊ2012 ˊAND顾客号=ˊBˊ11.SELECT商品号FROM购买表WHERE YEAR(购买时问)= ˊ2012 ˊ AND顾客号=ˊAˊINTERSECTSELECT商品号FROM购买表WHERE YEAR(购买时间)= ˊ2012ˊAND顾客号=ˊBˊIV.SELECT商品号FROM购买表WHERE YEAR(购买时问)= ˊ2012ˊAND顾客号=ˊA ˊUNl0NSELECT商品号FROM购买表WHERE YEAR(购买时间)= ˊ2012ˊAND顾客号=ˊB ˊ上述语句中,能够实现该查询要求的是( )。

    A.仅Ⅰ和Ⅱ

    B.仅Ⅰ和Ⅲ

    C.仅Ⅰ和Ⅳ

    D.全部


    正确答案:A
    Ⅲ选项中INTERSECT返回两个集合皆有的数据,该SQL语句返回顾客A和B都购买的商品号,不符合题意;lV选项中的UNION查询出了顾客A购买的商品,通过UNION关键字合并了顾客B没有购买的商品,因此总的视图为顾客A购买的商品和B没有购买的商品总和,不符合要求。Ⅰ、Ⅱ实现的是顾客A购买商品集合与顾客B购买商品集合的差集。因此满足要求的为l和Ⅱ,答案为A。

  • 第6题:

    根据以下资料,回答下列各题: 使用如下3个表: 商店(商店号,商店名,区域名,经理姓名) 商品(商品号,商品名,单价) 销售(商店号,商品号,销售日期,销售数量) 查询在“北京”和“上海”区域的商店信息的正确命令是( )。

    A.SELECT*FROM商店WHERE区域名=”北京”AND区域名=”上海”

    B.SELECT*FROM商店WHERE区域名=”北京”0R区域名=”上海”

    C.SELECT*FROM商店WHERE区域名=”北京”AND”上海”

    D.SELECT*FROM商店WHERE区域名=“北京”0R”上海”


    正确答案:A
    答案应该是A,题目中说“北京”和“上海”,所以应该选A。

  • 第7题:

    查询单价最高的商品销售情况,查询结果包括商品号、商品名、销售日期、销售数量和销售金额。正确命令是

    A.SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额 FROM商品JOIN销售ON商品.商品号=销售.商品号 WHERE单价=(SELECT MAX(单价)FROM商品)

    B.SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额 FROM商品JOIN销售ON商品.商品号=销售.商品号 WHERE单价=MAX(单价)

    C.SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额 FROM商品JOIN销售WHERE单价=(SELECT MAX(单价)FROM商品)

    D.SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额 FROM商品JOIN销售WHERE单价=MAX(单价)


    正确答案:A
    解析:在指定连接字段时可以用WHERE指定连接条件,也可以用超连接关键字JOIN表示普通连接,即只有满足连接条件的记录才出现在查询结果中,但JOIN后面必须用ON子句指定连接条件,故选项C)和D)是错误的,选项B)中的WHERE语句“单价=MAX(单价)”没有指明MAX(单价)这个最大值来自哪个表,故选A)。

  • 第8题:

    查询销售金额合计超过20000的商店,查询结果包括商店名和销售金额合计。正确命令是

    A.SELECT商店名,SUM(销售数量*单价)AS销售金额合计 FROM商店,商品,销售. WHERE销售金额合计20000

    B.SELECT商店名,SUM(销售数量*单价)AS销售金额合计>20000 FROM商店,商品,销售 WHERE商品.商品号=销售.商品号AND商店.商店号=销售.商店号

    C.SELECT商店名,SUM(销售数量*单价)AS销售金额合计 FROM商店,商品,销售 WHERE商品.商品号=销售.商品号AND商店.商店号=销售.商店号 AND SUM(销售数量*单价)>20000 GROUP BY商店名

    D.SEKECT商店名,SUM(销售数量*单价)AS销售金额合计 FROM商店,商品,销售 WHERE商品.商品号=销售.商品号AND商店.商店号=销售.商店号 GROUP BY商店名HAVING SIJM(销售数量*单价)>20000


    正确答案:D
    解析:要查询销售金额合计超过20000的商店,首先要按商店名分组计算销售金额合计,然后用HAVING短语限定分组后查询的条件是销售金额合计超过20000的商店。故D)是正确的。

  • 第9题:

    在SQL Server 2008中,设有商品表(商品号,商品名,生产日期,单价,类别)。现经常需要执行下列查询: SELECT 商品号, 商品名, 单价 FROM 商品表 WHERE 类别 IN (′食品′,′家电′) ORDER BY 商品号 现需要在商品表上建立合适的索引来提高该查询的执行效率。下列建立索引的语句,最合适的是( )。

    A.CREATE INDEX Idx1 ON 商品表(类别)

    B.CREATE INDEX Idx1 ON 商品表(商品号,商品名,单价)

    C.CREATE INDEX Idx1 ON 商品表(类别,商品号,INCLUDE (商品名,单价)

    D.CREATE INDEX Idx1 ON 商品表(商品号,INCLUDE (商品名,单价,WHERE 类别 = '食品' OR 类别 = '家电'


    正确答案:D

  • 第10题:

    有销售表:R(序列号,商品编码,单价,数量),如果要设计一个按商品编码统计销售额的报表,在报表设计时应使用的函数是()

    • A、=Avg([单价]*[数量])
    • B、=Count([单价]*[数量])
    • C、=Sum([单价]*[数量])
    • D、=Total([单价]*[数量])

    正确答案:C

  • 第11题:

    单选题
    查询商品单价在10到50之间,并且销售数量高于20的商品名、单价、销售日期和销售数量,查询结果按单价降序。正确的命令是(  )。
    A


    SELECT商品名,单价,销售日期,销售数量FROM商品JOIN销售
    WHERE(单价BETWEEN 10 AND 50)AND销售数量>20
    ORDER BY单价DESC

    B


    SELECT商品名,单价,销售日期,销售数量FROM商品JOIN销售
    WHERE(单价BETWEEN 10 AND 50)AND销售数量>20
    ORDER BY单价

    C


    SELECT商品名,单价,销售日期,销售数量FROM商品,销售
    WHERE(单价BETWEEN 10 AND 50)AND销售数量>20
    ON商品.商品号=销售.商品号ORDER BY单价

    D


    SELECT商品名,单价,销售日期,销售数量FROM商品,销售
    WHERE(单价BETWEEN 10 AND 50)AND销售数量>20
    AND商品.商品号=销售.商品号ORDER BY单价DESC


    正确答案: B
    解析:
    使用ORDER BY短语对查询结果进行排序,默认为升序排列。ABC三项错误,因为要查询满足条件的记录,需要对“商品表”和“销售表”中商品号相同的记录进行查找。

  • 第12题:

    单选题
    有销售表:R(序列号,商品编码,单价,数量),如果要设计一个按商品编码统计销售额的报表,在报表设计时应使用的函数是()
    A

    =Avg([单价]*[数量])

    B

    =Count([单价]*[数量])

    C

    =Sum([单价]*[数量])

    D

    =Total([单价]*[数量])


    正确答案: D
    解析: 暂无解析

  • 第13题:

    设有商品表(商品号,商品名,单价)和销售表(销售单据号,商品号,销售时间,销售数量,销售单价)。其中,商品号代表一类商品,商品号、单价、销售数量和销售单价均为整型。请编写查询某年某商品的销售总毛利的存储过程,毛利=销售数量x(销售单价一单价)。要求商品号和年份为输入参数,总毛利用输出参数返回。(10分)


    正确答案:
    存储过程是由PL/SQL语句书写的过程,这个过程经编译和优化后存储在数据库服务器中,使用时只要调用即可。使用存储过程具有以下优点:其已经编译和优化过了,所以运行效率高,提供了在服务器端快速执行SQL语句的有效途径;存储过程降低了客户端和服务器之间的通信量;方便实施企业规则,当企业规则发生变化时只要修改存储过程,而无需修改其他应用程序。创建存储过程:create procedure过程名@[参数名][类型],@[参数名][类型]/*过程首部*/AsDeclare/*as下面对应的<PL/SQL>块为过程体*/beginend如上所示,存储过程包括过程首部和过程体。过程名是数据库服务器合法的对象标识;参数列表:用名字来标识调用时给出的参数值,必须指定值的数据类型。参数可以是输人参数或输出参数,默认为输人参数。【参考答案】CREATE PROCEDURE PRODUCT@商品号int,@年份int,@毛利int outputASDECLARE@某商品销售量int,@某商品进价int,@某商品销售单价int/*中间变量定义:*/BEGINSelect@某商品进价=单价from商品表where@商品号=商品号Select@某商品销售单价=销售单价,@某商品销售量=count(*)from销售表where@商品号=商品号and销售时间=@年份IF@某商品进价is NULL THEN/木判断该商品是否存在*/ROLLBACK;RETURN;END IFIF@某商品销售单价is NULL THEN/*判断该两晶是否可卖*/ROLLBACK;RETURN;END IFSET@毛利=(@某商品销售单价-@某商品进价)*@某商品销售量GO

  • 第14题:

    某SQL Server 2000数据库中有两张表:商品表(商品号,商品名,商品类别,成本价)和销售表 (商品号,销售时间,销售数量,销售单价)。用户需统计指定年份每类商品的销售总数量和销售总利润,要求只列出销售总利润最多的前三类商品的商品类别、销售总数量和销售总利润。为了完成该统计操作,请按要求将下面的存储过程补充完整。

    CREATE PROC p_Sum

    @year INT

    AS

    SELECT (13) WITH TIRS

    商品类别,SUM(销售数量)AS销售总数量

    13.


    正确答案:TOP 3
    TOP 3

  • 第15题:

    设有商品表(商品编号,商品名,进货单价,销售单价)、销售表(商品编号,销售时间,销售数量)和商品利润表(商品编号,总利润)。设进货单价、销售数量、销售单价和总利润均为整型,商品编号和商品名的类型均为varchar(20)。总利润的默认值为0。请编写完成下列功能的存储过程:根据给定的商品编号修改对应商品的总利润。(10分)


    正确答案:存储过程如下: CREATE PROCEDURE ZLR_UPDATE @SPBH VARCHAR(20) AS DECLARE@JHDJ INT DECLARE@XSDJ INT、 DECLARE@XSSL INT DELARE@ZLRl INT DELARE@ZLR VARCHAR(20) SET@JHDJ=(SELECT进货单价FROM商品 表WHERE商品编号=@SPBH) SET@XSDJ=(SELECT销售单价FROM商品 表WHERE商品编号=@SPBH) SET@XSSIL=(SELECT销售数量FROM商品 表WHERE商品编号=@SPBH) SET@ZLRl=(@XSDJ-@JHDJ)*@XSSL SET@ZLR=CONVERT(VARCHAR@ ZLRl) UPDATE商品利润表SET总利润=@ZLR WHERE商品编号=@SPBH
    存储过程如下: CREATE PROCEDURE ZLR_UPDATE @SPBH VARCHAR(20) AS DECLARE@JHDJ INT DECLARE@XSDJ INT、 DECLARE@XSSL INT DELARE@ZLRl INT DELARE@ZLR VARCHAR(20) SET@JHDJ=(SELECT进货单价FROM商品 表WHERE商品编号=@SPBH) SET@XSDJ=(SELECT销售单价FROM商品 表WHERE商品编号=@SPBH) SET@XSSIL=(SELECT销售数量FROM商品 表WHERE商品编号=@SPBH) SET@ZLRl=(@XSDJ-@JHDJ)*@XSSL SET@ZLR=CONVERT(VARCHAR,@ ZLRl) UPDATE商品利润表SET总利润=@ZLR WHERE商品编号=@SPBH

  • 第16题:

    设在SQL Server 2008某数据库中有销售表(商品号,销售时间,销售数量,销售价格),其中商品号的类型为char(6),销售价格的类型为int。现要定义统计指定商品销售总价的标量函数。有下列定义该标量函数的语句:Ⅰ.Create FUNCTION db0.GetTotal(@GoodID char(6))Returns int ASBEGINReturn(SELECT SUM(销售价格)FROM销售表WHERE商品号=@GoodID.ENDⅡ.Create FUNCTION db0.GetTotal(@GoodID char(6))Returns int ASBEGINReturns(SELECT SUM(销售价格)FROM销售表WHERE商品号=@GoodID.ENDⅢ.Create FUNCTION db0.GetTotal(@GoodID chat(6))Returns intBEGINReturn(SELECT SUM(销售价格)FROM销售表WHERE商品号=@GoodID.END1V.Create FUNCTION db0.GetTotal(@GoodID char(6))Returns intReturns(SELECT SUM(销售价格)FROM销售表WHERE商品号=@GoodID.上述语句中,正确的是( )。

    A.仅I和Ⅱ

    B.仅Ⅲ和Ⅳ

    C.仅Ⅱ和Ⅳ

    D.仅I和Ⅲ


    正确答案:D
    标量函数返回一个确定类型的标量值。函数体语句定义在BEGIN-END语句内,其中包含了可以返回值的Transact-SQL命令。创建标量函数的语法如下:CREATEFUNCTION[ownername.]function_name([{@parameter_name[AS][type_schema_name.]parameter_data_type[=default]}[,…n])RETURNSreturn_data_type[AS]BEGINfunction_bodyRETURNscalar_expressionEND[;]

  • 第17题:

    根据以下资料,回答下列各题:使用如下3个表: 商店(商店号,商店名,区域名,经理姓名) 商品(商品号,商品名,单价) 销售(商店号,商品号,销售日期,销售数量) 查询在“北京”和“上海”区域的商店信息的正确命令是( )。

    A.SELECT*FROM商店WHERE区域名=”北京”AND区域名=”上海”

    B.SELECT*FRM商店WHERE区域名=”北京”0R区域名=”上海”

    C.SELECT*FROM商店WHERE区域名=”北京”AND”上海”

    D.SELECT*FROM商店WHERE区域名=“北京”0R”上海”


    正确答案:B
    B。【解析】本题是查询北京和上海的商店信息,AND表示既在北京又在上海,OR表示在北京或者在上海,所以使用OR,根据SQL语句的书写格式B选项正确,

  • 第18题:

    查询销售金额合计超过20000的商店,查询结果包括商店名和销售金额合计,正确命令是( )。

    A.SELECT商店名,SUM(销售数量*单价)AS销售金额合计 ROM商店,商品,销售 WHERE销售金额总计20000

    B.SELECT商店名,SUM(销售数量*单价)AS销售金额合计>20000 FRM商店,商品,销售 WHERE商品,商品号=销售.商品号AND商店.商店号=销售.商店号

    C.SELECT商店名,SUM(销售数量*单价)AS销售金额合计 FROM商店,商品,销售 WHERE商品.商品号=销售.商品号AND商店.商店号=销售.商店号 AND SUM(销售数量*单价)>20000 GROUP BY商店名

    D.SELECT商店名,SUM(销售数量*单价)>20000


    正确答案:D
    D。【解析】根据题意可知,A选项中WHERE语句中的条件错误;B选项中AS是代表为(销售数量*单价)取的别名,不能使用条件,因此B选项错误;C选项中的GROUPBY没语法错误,但没有HAVING语句;D选项正确。

  • 第19题:

    查询商品单价在10到50之间、并且日销售数量高于20的商品名、单价、销售日期和销售数量,查询结果按单价降序。正确命令是

    A.SELECT商品名,单价,销售日期,销售数量FROM商品JOIN销售 WHERE(单价BETWEEN 10 AND 50)AND销售数量>20 ORDER BY单价DESC

    B.SELECT商品名,单价,销售日期,销售数量FROM商品JOIN销售 WHERE(单价BETWEEN 10 AND 50)AND销售数量>20 ORDER BY单价

    C.SELECT商品名,单价,销售日期,销售数量FROM商品,销售 WHERE(单价BETWEEN 10 AND 50)AND销售数量>20 ON商品.商品号=销售.商品号ORDER BY单价

    D.SELECT商品名,单价,销售日期,销售数量FROM商品,销售 WHERE(单价BETWEEN 10 AND 50)AND销售数量>20 AND商品.商品号=销售.商品号ORDER BY单价DESC


    正确答案:D
    解析:按单价降序排列应在ORDER BY后跟DESC短语,因此排除B)和C)选项。选行多表查询时,指定两表关键字进行连接时,JOIN短语必须与ON短语联合使用,故选项A)错误。

  • 第20题:

    查询商品单价在10到50之间,并且日销售数量高于20的商品名,单价,销售日期和销售数量,查询结果按单价降序,正确命令是( )

    A.SELECT商品名,单价,销售日期,销售数量FROM商品JOIN销售 WHERE(单价BETWEEN l0 AND 50)AND销售数量>=20 ORDER BY单价DESC

    B.SELECT商品名,单价,销售日期,销售数量FROM商品JOIN销售 WHERE(单价BETWEEN l0 AND 50)AND销售数量>20

    C.SELECT商品名,单价,销售日期,销售数量FROM商品,销售 WHERE(单价BETWEEN l0 AND 50)AND销售数量>20 ON商品.商品号=销售.商品号ORDER BY单价

    D.SELECT商品名,单价,销售日期,销售数量FROM商品,销售 WHERE(单价BETWEEN l0 AND 50)AND销售数量>20 AND商品,商品号=销售,商品号ORDER BY单价DESC


    正确答案:D
    D。【解析】根据题意,A选项中使用了JOIN但是少了ON语句所以错误;B选项中不仅没有使用ON语句同时也没有使用降序排列,所以B选项错误;C选项中没有使用降序排列;D选项根据题意进行了查询并将查询结果按照降序进行排列,所以正确。

  • 第21题:

    商品S分别存放在1号仓库和2号仓库,在()中可查看每一个仓库的销售情况。

    • A、库存状况表
    • B、库存商品分别表
    • C、商品销售排行
    • D、商品销售分布表

    正确答案:D

  • 第22题:

    单选题
    查询单价最高的商品销售情况,查询结果包括商品号、商品名、销售日期、销售数量和销售金额。正确的命令是(  )。
    A


    SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额
    FROM商品JOIN销售0N商品.商品号=销售.商品号
    WHERE单价=(SELECT MAX单价)FROM商品)

    B


    SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额
    FROM商品JOIN销售ON商品.商品号=销售.商品号
    WHERE单价=MAX(单价)

    C


    SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额
    FROM商品JOIN销售WHERE单价=(SELECT MAX(单价)FROM商品)

    D


    SELECT商品.商品号,商品名,销售日期,销售数量,销售数量*单价AS销售金额
    FROM商品JOIN销售WHERE单价=MAX(单价)


    正确答案: B
    解析:
    CD两项错误,没有ON短语给出的连接条件;B项错误,WHERE之后添加了一个函数表达式,这是不符合语法要求的。

  • 第23题:

    单选题
    查询销售金额合计超过20000的商店,查询结果包括商店名和销售金额合计。正确的命令是(  )。
    A


    SELECT商品名,SUM(销售数量*单价)AS销售金额合计
    FROM商店,商品,销售
    WHERE销售金额合计>20000

    B


    SELECT商品名,SUM(销售数量*单价)AS销售金额合计>20000
    FROM商店,商品,销售
    WHERE商品.商品号=销售.商品号AND商店.商店号=销售.商店号

    C


    SELECT商品名,SUM(销售数量*单价)AS销售金额合计
    FROM商店,商品,销售
    WHERE商品.商品号=销售.商品号AND商店.商店号=销售.商店号
    AND SUM(销售数量*单价)>20000 GROUP BY商店名

    D


    SELECT商品名,SUM(销售数量*单价)AS销售金额合计
    FROM商店,商品,销售
    WHERE商品.商品号=销售.商品号AND商店.商店号=销售.商店号
    GROUP BY商店名HAVING SUM(销售数量*单价)>20000


    正确答案: C
    解析:
    GROUP BY短语对于查询结果进行分组,可以进行分组汇总。HAVING短语必须跟随GROUP BY使用,用来限定分组必须满足的条件。