设有“订货”表(订单号,客户号,金额,订购日期),使用SQL语句检索每个客户订货的“总金额”(注意要生成该字段名):SELECT客户号,__________FROM订货GROUP BY客户号

题目

设有“订货”表(订单号,客户号,金额,订购日期),使用SQL语句检索每个客户订货的“总金额”(注意要生成该字段名):SELECT客户号,__________FROM订货GROUP BY客户号


相似考题
参考答案和解析
正确答案:
SUM(金额)AS总金额 (或sum(金额)总金额)
【解析】检索每个客户订货的总金额时,须按“客户号”进行分组计算。再在每一组中进行计算,这里应该用SUM函数求总和,用AS短语指定新的字段名,该短语也可以省略。 
更多“设有“订货”表(订单号,客户号,金额,订购日期),使用SQL语句检索每个客户订货的“总金额”( ”相关问题
  • 第1题:

    ●试题二

    阅读以下说明,回答问题,将解答写在试卷的对应栏内。

    【说明】

    某公司要开发一个销售管理系统,该系统的主要功能是:处理客户和销售员送来的订单;工厂是根据订货安排生产的,交出货物同时开出发票,收到客户付款后,根据发票存根进行应收款处理。每张订单由订单号,若干头信息和订单细节组成。一张订单可定购多种产品,工厂对大宗订货给予优惠。每种产品都规定了不同订货数量的折扣。

    根据上述要求公司的销售部王经理写下了以下数据表结构:

    客户:(客户号,客户名,地址,电话)

    订单:(订单号,客户号,产品号,订货数,订货日期,交货日期,金额)

    应收账款:(客户号,订单号,发票号,应收金额,支付日期,支付金额,当前余额)

    产品描述:(产品号,产品名,单价,重量)

    折扣规则:(产品号,订货量,折扣)

    【问题1】

    上表中带下划线的为主码。请为还没有确定主码或是主码不合理的数据表选定最合适的主码。

    【问题2】

    上面的关系模式中还有不是第二范式的,请将其转为第二范式。并确定新数据表的主码。


    正确答案:

    ●试题二

    【答案】

    (1)客户:(客户号,客户名,地址,电话)

    订单:(订单号,客户号,产品号,订货数,订货日期,交货日期,金额)

    应收账款:(客户号,发票号,发票号应收金额,支付日期,支付金额,当前余额)

    产品描述:(产品号,产品名,单价,重量)

    折扣规则:(产品号订货量,折扣)

    (2)将数据表:订单:(订单号,客户号,产品号,订货数,订货日期,交货日期,金额)

    拆分为:

    订单:(订单号,客户号,订货项数(可有可无),订货日期,交货日期)

    订单细则:(订单号产品号,订货数,金额)

    【解析】这一题主要考查考生对数据表的结构的设计能力。这一步在MIS系统的开发中是至关重要的一步,因为数据表的结构是否合理直接影响到整个系统的性能。

    原题中的订单表,不符合第二范式,因为其中含有部分依赖关系(订单号,产品号)->订货日期,(订单号,产品号)->交货日期,(由于一张订单有可能订了多种产品,但因为是同一订单所以这几种产品的订货日期,交货日期只要订单号就可以确定了)  

     

  • 第2题:

    查询尚未最后确定订购单的有关信息的正确命令是( )。

    A.SELECT名称,联系人,电话号码,订单号FROM客户,订购单WHERE客户.客户号=订购单.客户号AND订购日期IS NULL

    B.SELECT名称,联系人,电话号码,订单号FROM客户,订购单WHERE客户.客户号=订购单.客户号AND订购日期=NULL

    C.SELECT名称,联系人,电话号码,订单号FROM客户,订购单FOR客户.客户号=订购单.客户号AND订购日期IS NULL

    D.SELECT名称,联系人,电话号码,订单号FROM客户,订购单FOR客户.客户号=订购单.客户号AND订购日期=NULL


    正确答案:A
    A。【解析】在SQL语句中,限定查询条件使用的是WHERE短语,所以选项C和选项D是错误的。而且在查询空值时使用的是ISNULL,而“=NULL”是无效的。选项A正确。

  • 第3题:

    设有学生表XS(学号,课程号,成绩),用SQL语句检索每个学生的成绩总和的语句是:

    SELECT 学号,SUM(成绩) FROM XS ______


    正确答案:GROUP BY 学号
    GROUP BY 学号 解析:在实际的应用中,除了简单的计算查询外,我们还可以加上GROUP BY子句进行分蛆计算查询。
    通常来说,一个计算函数的范围是满足WHERE子句指定条件的所有记录。当加上GROUP BY于句后,系统会将查询结果按指定列分成集合组。当一个计算函数和一个GROUP BY子句一起使用时,计算函数的范围变为每组所有的记录。也就是说,一个结果是由组成一组的每个记录集合产生的。
    检索每个学生的成绩总和时,需按学号进行分组计算。

  • 第4题:

    查询尚未最后确定订购单的有关信息的正确命令是( )。

    A.SELECT名称,联系人,电话号码,订单号FROM客户,订购单WHERE客户.订单号=订购单.订单号and订购日期IS NULL

    B.SELECT名称,联系人,电话号码,订单号FROM客户,订购单WHERE客户.订单号=订购单.订单号and订购日期=NULL

    C.SRLECT名称,联系人,电话号码,订单号FROM客户,订购单FOR客户.订单号=订购单.订单号and订购日期IS NULL

    D.SELECT名称,联系人,电话号码,订单号FROM客户,订购单FOR客户.订单号=订购单.订单号and订购日期=NULL


    正确答案:A
    解析:本题考查在SQL查询语句中对NULL(空)值的掌握。使用Null值作为空值查询,其中查询空值要使用Is NULL,或Is Not NULL,而“=NULL”是无效表达式,选项C及选项D使用了错误的条件关键字“FOR”所以排除,选项B使用了无效表达式“=NULL”,故正确答案为A。

  • 第5题:

    有以下SQL语句: SELECT订单号.签订日期,金额FROM订单,职员 WHERE订单.职员号=职员.职员号AND姓名=”王五” 与如上语句功能相同的SQL语句是( )。

    A. SELECT订单号,签订日期,金额FROM订单 WHERE EXISTS(SELECT*FROM职员WHERE姓名=”王五”)

    B. SELECT订单号,签订日期,金额FROM订单WHERE EXISTS(SELECT书FROM职员WHERE职员号=订单.职员号AND姓名=”王五”)

    C. SELECT订单号,签订日期,金额FROM订单 WHERE IN(SELECT职员号FROM职员WHERE姓名=”李二”)

    D. SELECT订单号,签订日期,金额FROM订单WHERE IN(SELECT职员号FROM职员WHERE职员号=订单.职员号AND姓名=”王五”)


    正确答案:B
    谓词EXISTS用来检验在子查询中是否有结果返回,本题中内层查询引用了外层查询的表,所以也是内外层互相关嵌套查询。故排除选项A、C、D的错误之处是在 WHERE和IN之间缺少“职工号”。

  • 第6题:

    有如下SQL语句:

    SELECT订单号,签订日期,金额 FROM 订单,职员:

    WHERE订单.职员号=职员.职员号AND姓名=”李二”

    与如上语句功能相同的SQL语句是( )。


    正确答案:B
    题目中给出的SELECT语句是查找出姓名为“李二”的职员签订的单号、签订日期和金额。选项B)中,使用EXISTS谓词来检查子查询中是否有结果返回,它的查询过程是:外查询中,在订单表中从第一条记录开始取出当前职员号,再在内查询中,针对该职员号,在职员表中逐条记录判断是否存在符合WHERE条件的记录,如果存在,则在外查询的订单表巾找到该职员号对应的订单号、签订日期和金额;然后依次类推,在订单表中从第二条记录中取出当前职员号,再在内查询中进行判断,直到将订单表中的所有记录都处理完毕。

  • 第7题:

    有如下订单表:

    订单(订单号(C,4),客户号(C,4),职员号(C,3),签订日期(D.,金额(N,6,2))统计2012年各月份签订的订单的总金额,正确的SQL语句是( )。

    A.SELECT MONTH(签订日期)月份,SUM(金额)总金额FROM订单GROUP BY月份WHHRE YEAR(签订日期)=2012

    B.SELECT MONTH(签订日期)月份,SUM(金额)总金额FROM订单GROUP BY月份HAVING YEAR(签订日期)=2012

    C.SELECT签订日期.MONTH( )月份,SUM(金额)总金额FROM订单GROUP:BY月份WHERE 签订日期.YEAR( )=2012

    D.SELECT签订日期.MONTH( )月份,SUM(金额)总金额FROM订单GROUP BY月份HAⅥNG 签订日期.YEAR( )=2012


    正确答案:B
    本题考查分组与计算查询,SELECT说明要查询的字段,FROM说明要查询的字段来自哪个表或哪些表,WHERE说明查询条件,GROUPBY…HAVING用于按照签订日期进行分组。限定时间的语句应该为。YEAR(签订日期)-2012”,首先排除C、D选项。由于给GRoUPBY子句加条件必须使用HAVING,而不可以使用WHERE.因此可见本题B选项正确。

  • 第8题:

    在客户订单录入过程中,对于客户订单的每个物料行必须输入哪些信息?()

    • A、只有物料代码和客户订单号
    • B、只有客户订单号,订购数量和客户要求的日期
    • C、只有物料代码,客户订单号,客户要求的日期和承诺日期
    • D、物料代码,客户订单号,订购数量,客户要求的日期,承诺日期

    正确答案:D

  • 第9题:

    单选题
    设有订单表order(其中包括字段:订单号,客户号,职员号,签订日期,金额),查询2007年所签订单的信息,并按金额降序排序,正确的SQL命令是()
    A

    SELECT*FROMorderWHEREYEAR(签订日期)=2007ORDERBY金额DESC

    B

    SELECT*FROMorderWHILEYEAR(签订日期)=2007ORDERBY金额ASC

    C

    SELECT*FROMorderWHEREYEAR(签订日期)=2007ORDERBY金额ASC

    D

    SELECT*FROMorderWHILEYEAR(签订日期)=2007ORDERBY金额DESC


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

  • 第10题:

    单选题
    有订单表如下:订单(订单号(C,4),客户号(C,4),职员号(C,3),签订日期(D),金额(N,6,2))查询金额最高的订单的订单号(可能有多个),不正确的SQL语句是(  )。
    A

    SELECT订单号FROM订单WHERE金额>=ALL(SELECT金额FROM订单)

    B

    SELECT订单号FROM订单WHERE金额=(SELECT MAX(金额)FROM订单)

    C

    SELECT订单号FROM订单WHERE金额=MAX(金额)

    D

    SELECT订单号FROM订单WHERE金额>=(SELECT MAX(金额)FROM订单)


    正确答案: C
    解析:
    ALL()表示子查询中的所有的行都符合条件结果成立。MAX(最大值)计算指定列的最大值。C项错误,需要使用子查询(SELECT MAX(金额)FROM订单)来得到金额的最大值。

  • 第11题:

    单选题
    查询尚未最后确定订购单的有关信息的正确命令是(  )。
    A


    SELECT名称,联系人,电话号码,订单号FROM客户,订购单;
    WHERE客户.客户号=订购单.客户号AND订购日期IS NULL

    B


    SELECT名称,联系人,电话号码,订单号FROM客户,订购单;
    WHERE客户.客户号=订购单.客户号AND订购日期=NULL

    C


    SELECT名称,联系人,电话号码,订单号FROM客户,订购单;
    FOR客户.客户号=订购单.客户号AND订购日期IS NULL

    D


    SELECT名称,联系人,电话号码,订单号FROM客户,订购单;
    FOR客户.客户号=订购单.客户号AND订购日期=NULL


    正确答案: D
    解析:
    Visual FoxPro的SQL SELECT命令的语法格式中WHERE说明查询条件,即选择元组的条件。查询语法中没有关键词FOR;查询空值未定事情时要使用IS NULL,而“=NULL”是无效的,因为空值不是一个确定的值,不能用“=”进行比较。

  • 第12题:

    单选题
    在客户订单录入过程中,对于客户订单的每个物料行必须输入哪些信息?()
    A

    只有物料代码和客户订单号

    B

    只有客户订单号,订购数量和客户要求的日期

    C

    只有物料代码,客户订单号,客户要求的日期和承诺日期

    D

    物料代码,客户订单号,订购数量,客户要求的日期,承诺日期


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

  • 第13题:

    在客户订单录入过程中,对于客户订单的每个物料行必须输入哪些信息?()

    A.只有物料代码和客户订单号

    B.只有客户订单号,订购数量和客户要求的日期

    C.只有物料代码,客户订单号,客户要求的日期和承诺日期

    D.物料代码,客户订单号,订购数量,客户要求的日期,承诺的日期


    参考答案D

  • 第14题:

    设有订单表order(其中包括字段:订单号,客户号,客户号,职员号,签订日期,金额),删除2002年1月1日以前签订的订单记录,正确的SQL命令是:()

    A、DELETETABLEorderWHERE签订日期<{^2002-1-1}

    B、DELETETABLEorderWHILE签订日期>{^2002-1-1}

    C、DELETEFROMorderWHERE签订日期<{^2002-1-1}

    D、DELETEFROMorderWHILE签订日期>{^2002-1-1}


    参考答案:C

  • 第15题:

    第{TSE}题使用如下3个数据库表:

    职员.dbf:职员号C(3),姓名C(6),性别C(2),组号N(1),职务C(10)

    客户.dbf:客户号C(4),客户名C(36),地址C(36),所在城市C(36)

    订单.dbf:订单号C(4),客户名C(4),职员号C(3),签订日期D,金额N(6.2)

    {TS}查询金额最大的10%订单的信息,正确的SQL语句是( )。


    正确答案:D

  • 第16题:

    设有“订货”表(订单号,客户号,金额,订购日期),使用SQL语句检索每个客户订货的“总金额”(注意要生成该字段名).

    SELECT客户号,_____FROM订货GROUP BY客户号


    正确答案:
    SUM(金额)AS总金额(或sum(金额)总金额)  检索每个客户订货的总金额时,须按“客户号”进行分组计算。再在每一组中进行计算,这里应该用SUM()函数求总和,用AS短语指定新的字段名,该短语也可以省略。

  • 第17题:

    阅读以下说明,回答问题。

    【说明】

    某公司要开发一个销售管理系统,该系统的主要功能是:处理客户和销售员送来的订单;工厂是根据订货安排生产的,交出货物同时开出发票,收到客户付款后,根据发票存根进行应收款处理。每张订单由订单号,若干头信息和订单细节组成。一张订单可定购多种产品,工厂对大宗订货给予优惠。每种产品都规定了不同订货数量的折扣。

    根据上述要求公司的销售部王经理写下了以下数据表结构:

    客户:(客户号,客户名,地址,电话)

    订单:(订单号,客户号,产品号,订货数,订货日期,交货日期,金额)

    应收账款:(客户号,订单号,发票号,应收金额,支付日期,支付金额,当前余额)

    产品描述:(产品号,产品名,单价,重量)

    折扣规则:(产品号,订货量,折扣)

    上表中带下划线的为主码。请为还没有确定主码或是主码不合理的数据表选定最合适的主码。


    正确答案:客户:(客户号客户名地址电话) 订单:(订单号客户号产品号订货数订货日期交货日期金额) 应收账款:(客户号发票号发票号应收金额支付日期支付金额当前余额) 产品描述:(产品号产品名单价重量) 折扣规则:(产品号订货量折扣)
    客户:(客户号,客户名,地址,电话) 订单:(订单号,客户号,产品号,订货数,订货日期,交货日期,金额) 应收账款:(客户号,发票号,发票号应收金额,支付日期,支付金额,当前余额) 产品描述:(产品号,产品名,单价,重量) 折扣规则:(产品号,订货量,折扣)

  • 第18题:

    有如下职员表和订单表:职员(职员号(C,3),姓名(C,6),性别(C,2),职务(C,10))订单(订单号(C,4),客户号(C,4),职员号(C,3),签订日期(D),金额(N,6,2))查询职工〝李丽〞签订的订单消息,正确的SQL.语句是( )。

    A.SELECT订单号,客户号,签订日期,金额FROM订单WHERE姓名=〝李丽〞

    B.SELECT订单号,客户号,签订日期,金额FROM职员,订单WHERE姓名=〝李丽〞; AND职员.职员号一订单.职员号

    C.SELECT订单号,客户号,签订日期,金额FROM职员JOIN订单; WHERE职员.职员号=订单.职员号AND姓名=〝李丽〞

    D.SELECT订单号,客户号,签订日期,金额FROM职员,订单ON职员.职员号=订单.职员号AND姓名=〝李丽〞


    正确答案:C
    SQL的基本格式为SELECT-FROM-WHERE,其中SELECT说明要查询的字段,FROM说明要查询的字段来自哪个表或哪些表,WHERE说明查询条件.本题查询“李丽”签订的订单信息,要查询字段包括订单号、客户号、签订日期和金额,WHERE后应该限定职员和订单表中的姓名为“李丽”,由于订单表中并没有姓名这一字段,因此用职员号字段将两表信息相连,AND表示“且”。故本题C为正确选项。

  • 第19题:

    为“客户”表建立普通索引,要求按“客户号”字段升序排列,如果客户号(C,4)相等,则按“订购日期”(D)升序排列,下列语句正确的是( )。

    A)INDEXON客户号,订购日期TOkhie

    B)INDEXON客户号+订购日期TOkhje

    C)INDEXON客户号,DTOC(订购日期)TOkhje.

    D)INDEXON客户号+DTOC(订购日期)TOkhje


    正确答案:D
    利用命令建立多个字段索引时,建立索引的字段之间应用连接符“+”连接,且字段类型要转换为字符型数据, DTOC函数的功能是将日期型数据转换为字符型数据。

  • 第20题:

    单选题
    有如下订单表和客户表:订单(订单号(C,4),客户号(C,4),职员号(C,3),签订日期(D),金额(N,6,2))客户(客户号(C,4),客户名(C,36),地址(C,36),所在城市(C,10),联系电话(C,8))查询有订单金额大于等于10000的客户信息的正确SQL语句是(  )。
    A

    SELECT*FROM客户WHERE客户号=;
    SELECT客户号FROM订单WHERE金额>=10000)

    B

    SELECT*FROM客户WHERE客户号=;
    ALL(SELECT客户号FROM订单WHERE金额>=10000)

    C

    SELECT*FROM客户WHERE客户号=;
    ANY(SELECT客户号FROM订单WHERE金额>=10000)

    D

    SELECT*FROM客户WHERE客户号=;
    WHERE(SELECT客户号FROM订单WHERE金额>=10000)


    正确答案: A
    解析:
    C项正确,使用“ANY”时只要子查询中有一行能使结果为真,若客户有多个定单,那么当有一个订单的金额大于等于10000时,该客户号就能被查询出来;A项错误,内层查询结果为多值,“=”运算符只能与一个具体的值进行比较;B项错误,题中不会所有的客户的订单金额都大于等于10000,“ALL”当子查询中的所有行都使结果为真时结果才为真;D项错误,外层查询中使用两个WHERE,属于格式错误。

  • 第21题:

    单选题
    有如下订单表和客户表:订单(订单号(C,4),客户号(C,4),职员号(C,3),签订日期(D),金额(N,6,2))客户(客户号(C,4),客户名(C,36),地址(C,36),所在城市(C,10),联系电话(C,8))查询签订了订单号为“0036”的订单的客户信息,不正确的SQL语句是(  )。
    A

    SELECT客户.客户号,客户名FROM客户,订单WHERE客户.客户号=订单.客户号AND订单号=”0036”

    B

    SELECT客户.客户号,客户名FROM客户,订单ON客户.客户号=订单.客户号AND订单号=”0036”

    C

    SELECT客户.客户号,客户名FROM客户JOIN订单ON客户.客户号=订单.客户号AND订单号=”0036”

    D

    SELECT客户.客户号,客户名FROM客户JOIN订单ON客户.客户号=订单.客户号WHERE订单号=”0036”


    正确答案: C
    解析:
    多表连接查询格式为:SELECT…FROM<数据库表1>INNER|LEFT|RIGHT|FULL JOIN<数据库表2>ON连接条件WHERE其它条件。

  • 第22题:

    单选题
    有订单表如下:订单(订单号(C,4),客户号(C,4),职员号(C,3),签订日期(D),金额(N,6,2))查询所有金额大于等于平均金额的订单的订单号,正确的SQL语句是(  )。
    A

    SELECT订单号FROM订单WHERE金额>=(SELECT AVG(金额)FROM订单)

    B

    SELECT订单号FROM订单WHERE金额=(SELECT AVG(金额)FROM订单)

    C

    SELECT订单号FROM订单WHERE金额>=ALL(SELECT AVG(金额)FROM订单)

    D

    SELECT订单号FROM订单WHERE金额=ALL(SELECT AVG(金额)FROM订单)


    正确答案: C
    解析:
    查询嵌套首先进行内层查询,其次是外层查询,即先查询出订单表中的平均金额,然后筛选出金额大于等于平均金额的订单号。CD两项错误,因为内层查询使用AVG不能使用ALL进行限定。

  • 第23题:

    单选题
    有订单表如下:订单(订单号(C,4),客户号(C,4),职员号(C,3),签订日期(D),金额(N,6,2))查询每个客户的总金额信息的正确SQL语句是(  )。
    A

    SELECT订单号,SUM(金额)FROM订单GROUP BY客户号

    B

    SELECT订单号,SUM(金额)FROM订单ORDER BY客户号

    C

    SELECT客户号,SUM(金额)FROM订单GROUP BY客户号

    D

    SELECT客户号,SUM(金额)FROM订单ORDER BY客户号


    正确答案: C
    解析:
    本题中由于要求查询每个客户的总金额,应当以客户号,SUM(金额)为查询的来源。GROUP BY短语用于对查询结果进行分组,可以利用它进行分组汇总;ORDER BY短语用来对查询的结果进行排序。

  • 第24题:

    单选题
    “客户”表和“贷款”表的结构如下:客户(客户号,姓名,出生日期,身份证号)贷款(贷款编号,银行号,客户号,贷款金额,贷款性质)如果要删除客户表中的出生日期字段,使用的SQL语句是(  )。
    A

    ALTER TABLE客户DELETE出生日期

    B

    ALTER TABLE客户DELETE COLUMN出生日期

    C

    ALTER TABLE客户DROP出生日期

    D

    ALTER TABLE客户DROP FROM出生日期


    正确答案: B
    解析:
    删除表中的字段语法:ALTER TABLE<表名> DROP <字段名1>。