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

题目

设商场业务系统中有销售单据表(销售单据号, 收款员, 销售时间),销售明细表(销售明细条目号, 销售单据号, 商品号, 数量, 单位, 金额)和商品表(商品号, 商品名, 价格)。该系统业务繁忙,保存的数据量非常大,每次换班时要统计收款员的收入总额,每天停业后要统计各个商品的当天销售量,销售过程中经常需要查询某笔销售业务的情况。为了优化系统性能,下列优化方案合理的是

A.在销售单据表的收款员属性上建立聚集索引,在销售明细表的销售单据号属性上建立非聚集索引,在商品表的商品号属性上建立聚集索引

B.在销售单据表的销售单据号属性上建立聚集索引,在销售明细表的销售单据号属性上建立非聚集索引,在商品表的商品号属性上建立聚集索引,建立收款员单班销售量表和商品当天销售汇总表,在每笔销售成交后分别累计统计相应数据

C.在销售单据表的销售时间属性和收款员属性上分别建立聚集索引,在销售明细表的销售单据号属性上建立非聚集索引,在商品表的商品号属性上建立聚集索引,建立收款员单班销售量表和商品当天销售汇总表,在每笔销售成交后分别累计统计相应数据

D.在销售单据表的销售单据号属性和收款员属性上分别建立聚集索引,在销售明细表的商品号属性上建立聚集索引


相似考题

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

参考答案和解析
正确答案:C
更多“设商场业务系统中有销售单据表(销售单据号, 收款员, 销售时间),销售明细表(销售明细条目号, 销售 ”相关问题
  • 第1题:

    设有商品表(商品号,商品名,单价)和销售表(销售单据号,商品号,销售时间,销售数量,销售单价)。其中,商品号代表一类商品,商品号、单价、销售数量和销售单价均为整型。请编写查询某年某商品的销售总毛利的存储过程,毛利=销售数量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

  • 第2题:

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

    (7)


    正确答案:低

  • 第3题:

    设某商品经营管理系统使用SQL Server 2000数据库管理系统。在数据库中存在销售明细表,其建表语句为:

    CREATE TABLE销售明细表(

    销售单据编号varchar(8),

    商品编号varchar(8),

    单价money,

    数量int,

    总价money

    ) ,

    为了保证数据的一致性,建有如下触发器:

    CREATE TRIGGER AutoCountSum

    ON销售明细表FOR INSERT,UPDATE

    AS

    DECLARE@UnitPrice money,@Quantity int

    DECLARE@Amount money

    SELECT@UnitPrice=单价,@Quantity=数量

    FROM inserted

    SET@Amount=@UnitPrice*@Quantity

    UPDATE销售明细表SET总价=@Amount

    WHERE销售单据编号IN(SELECT销售单据编号FROM inserted)

    AND商品编号IN(SELECT商品编号FROM inserted)

    ①设系统运行一段时间后此表中有近一百万条记录,此时发现对该表的插入操作速度很慢,请分析插入速度慢的原因。(3分)

    在不改变数据库服务器硬件和表结构、不清理数据的情况下,请说明应如何优化此表的插入操作。(2分)

    ②在解决了①中的问题后,程序员在数据库中执行如下SQL语句:

    SELECT商品编号,sum(总价)FROM销售明细表

    WHERE单价>50

    GROUP BY商品编号

    请在不改变该SQL语句的情况下,给出提高该查询执行效率的方案。(5分)


    正确答案:①inserted表用于存储INSERT和UP DATE语句所影响的行的副本。在一个插入或更新事务处理中新建行被同时添加到inserted表和触发器表中。inserted表中的行是触发器表中新行的副本。当表中有近100万条记录的时候inserted表中也存在大量的数据而触发器要在inserted表中进行查询所以插入的速度会变慢。可以通过删除inserted表中数据的方法来优化插入的速度。 ②该SQL语句的查询结果为:在销售明细表中按照商品编号统计单价大于50的商品的销售总价。在不改变该SQL语句的情况下可以为销售明细表按照“商品编号”建立一个索引来提高查询的效率。
    ①inserted表用于存储INSERT和UP DATE语句所影响的行的副本。在一个插入或更新事务处理中,新建行被同时添加到inserted表和触发器表中。inserted表中的行是触发器表中新行的副本。当表中有近100万条记录的时候,inserted表中也存在大量的数据,而触发器要在inserted表中进行查询,所以插入的速度会变慢。可以通过删除inserted表中数据的方法来优化插入的速度。 ②该SQL语句的查询结果为:在销售明细表中,按照商品编号统计单价大于50的商品的销售总价。在不改变该SQL语句的情况下,可以为销售明细表按照“商品编号”建立一个索引,来提高查询的效率。

  • 第4题:

    给定以下三个关系表:

    销售明细表(商品标识,销售时间,单价,数量,金额)日销售表(商品标识,销售日,总数量,总金额)月销售表(商品标识,销售月份.总数量,总金额)下述说法正确的是______。

    A)销售明细表的数据粒度最大,数据量最大

    B)日销售表的数据粒度最大,数据量最小

    C)月销售表的数据粒度最大,数据量最小

    D)月销售表的数据粒度最小,数据量最小

    A.

    B.

    C.

    D.


    正确答案:C

  • 第5题:

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

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

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

    FROM商品表 (10) 销售表

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

    WHERE单价>100

    GROUP BY商品表。商品号

    (9)


    正确答案:COUNT(销售表.商品号)
    COUNT(销售表.商品号)