设在SQL Server2008某数据库中有图书表(书号,书名,出版日期,单价),其中“书号”是主码。现要查询2015年1月份出版的单价最高的前三本图书的详细信息。下列查询语句中能正确完成该查询要求的是( )。A.SELECT*TOP 3 FROM图书表WHERE出版Et期BETWEEN’2015/1/1′AND′2015/1/31′ORDER BY单价DESCB.SELECT TOP 3幸FROM图书表WHERE出版日期BETWEEN#2015/1/1#AND#2015/1/31#ORDER BY单价D

题目
设在SQL Server2008某数据库中有图书表(书号,书名,出版日期,单价),其中“书号”是主码。现要查询2015年1月份出版的单价最高的前三本图书的详细信息。下列查询语句中能正确完成该查询要求的是( )。

A.SELECT*TOP 3 FROM图书表

WHERE出版Et期BETWEEN’2015/1/1′AND′2015/1/31′

ORDER BY单价DESC

B.SELECT TOP 3幸FROM图书表

WHERE出版日期BETWEEN#2015/1/1#AND#2015/1/31#

ORDER BY单价DESC

C.SELECT TOP 3*FROM图书表

WHERE出版日期BETWEEN’2015/1/1′AND′2015/1/31′

ORDER BY单价DESC

D.SELECT木TOP 3 FROM图书表

WHERE出版日期BETWEEN#2015/1/1#AND#2015/1/31#

ORDER BY单价DESC


相似考题
参考答案和解析
参考答案:C
更多“设在SQL Server2008某数据库中有图书表(书号,书名,出版日期,单价),其中“书号”是主码。现要查询2015年1月份出版的单价最高的前三本图书的详细信息。下列查询语句中能正确完成该查询要求的是( )。 A.SELECT*TOP 3 FROM图书表WHERE出版Et期BETWEEN’2015/1/1′AND′2015/1/31′ORDER BY单价DESCB.SELECT ”相关问题
  • 第1题:

    查询“上海”作者出版的图书情况,要求包含作者姓名、书名和价格信息,并按图书“价格”降序排列,下列SQL语句中正确的是( )。

    A.SELECT 姓名,书名,价格 FROM 图书,作者; JOIN 图书.作者编号=作者.作者编号; WHERE所在城市="上海"; ORDER BY 价格 DESC

    B.SELECT 姓名,书名,价格 FROM 图书,作者; JOIN 图书.作者编号=作者.作者编号; ON 所在城市="上海"; ORDER BY 价格

    C.SELECT 姓名,书名,价格 FROM 图书,作者; WHERE 图书.作者编号=作者.作者编号; AND 所在城市="上海"; ORDER BY 价格 DESC

    D.SELECT 姓名,书名,价格 FROM 图书,作者; WHERE 图书.作者编号=作者.作者编号; AND 所在城市="上海"; ORDER BY 价格


    正确答案:C
    解析:本题是一个多表连接查询的SQL语句,关键要注意表间连接条件的使用。如果使用超连接方式查询,则正确的语句格式为:
    SELECT……
    FROM数据库表1>INNER JOIN数据库表2>
    ON连接条件>
    WHERE……
    其中,INNER JOIN等价于JOIN,为普通的连接,在Visual FoxPro中称为内部连接;ON连接条件>指定两个进行表连接的条件字段。
    如果使用的是普通的连接方式,则只需在FROM短语中指定查询的数据表,各表名之间用逗号隔开,而各表之间的连接放在WHERE短语后面,设计两个连接条件时,用AND短语连接这两个条件。ORDBY BY短语的功能是对查询结果按指定字段进行排序。

  • 第2题:

    如果要查询所藏图书中,各个出版社图书的最高单价、平均单价和册数,所用的SQL语句是

    A.SELECT出版单位,MAX(单价),AVG(单价),COUNT(*); FROM 图书; GROUP BY 出版单位

    B.SELECT 出版单位,MAX(单价),AVG(单价),COUNT(*); FROM 图书; HAVING 出版单位

    C.SELECT 出版单位,MIX (单价),AVG (单价),COUNT(*); FROM 图书 GROUP BY 出版单位

    D.SELECT出版单位,MIN(单价),AVG(单价),COUNT(*); FROM 图书; HAVING 出版单位


    正确答案:A
    解析:求各个出版社图书的,必须用GROUPBY短语对各个出版社进行分组,求最大值函数为MAX(),求最小值函数为MIN(),COUNT()用以计数,HAVING短语必须与GROUPBY短语一起出现,不能单独使用。

  • 第3题:

    在SQL Server 2000中,某数据库中有图书表(书号, 图书名称, 类别)和销售表(书号, 销售时间, 销售数量),其中销售数量大于0。现要查询2009年10月销售的图书名称和类别。请补全下列实现该功能的查询语句。

    SELECT图书名称, 类别FROM图书表

    WHERE EXISTS(SELECT*FROM销售表

    WHERE销售时间BETWEEN '2009/10/1' AND '2009/10/31'

    ______)


    正确答案:and 书号=图书表.书号
    and 书号=图书表.书号

  • 第4题:

    对于图书管理数据库,求电子工业出版社出版图书的最高单价、最低单价和平均单价。下面SQL语句正确的是 SELECT ______ FROM图书; WHERE出版单位=“电子工业出版社”

    A.MAX(单价),MIN(单价),AVG(单价)

    B.MAX(单价),MIN(单价),AVERAGE(单价)

    C.MAX(单价),MIX(单价),AVG(单价)

    D.MAX(单价),SUM(单价),AVG(单价)


    正确答案:A
    解析:本题的目的是求电子工业出版社出版图书的最高单价、最低单价和平均单价。因为需要求图书的最高单价、最低单价和平均单价,因此分别需要关键字MAX、MIN和AVG,能够完成题目要求的SQL语句如下: SELECT MAX(单价),MIN(单价),AVG(单价) FROM 图书因此本题的正确答案是A。

  • 第5题:

    对于图书管理数据库,要查询所藏图书中各个出版社的图书最高单价、平均单价和册数,下面SQL语句正确的是______。 SELECT 出版单位,______,______,______; FROM 图书______出版单位

    A.MIN(单价)AVGAGE(单价)COUNT(*)GROUP BY

    B.MAX(单价)AVG(单价)COUNT(*)ORDER BY

    C.MAX(单价)AVG(单价)SUM(*)ORDER BY

    D.MAX(单价)AVG(单价)COUNT(*)GROUP BY


    正确答案:D
    解析:本题要求的是查询所藏图书中,各个出版社的图书最高单价、平均单价和册数,因此首先可以肯定的是将会用到GROUP BY子句,同时需要知道最高单价和平均单价,因此肯定需要用到MAX和AVG函数,最后还需要统计每个出版社的图书的册数,因此还需要利用COUNT()函数,根据以上分析,最后所采用的SQL语句应该是
      SELECT 出版单位,MAX(单价),AVG(单价),COUNT(*)
      FROM 图书 GROUP BY 出版单位
      因此选项D为正确答案。

  • 第6题:

    请完成下列查询的SQL语句。

    (1)查询名称中包含“数据库”的图书的图书名称,作者,出版社和出版日期。

    SELECT (d)

    FROM 图书

    WHERE 图书名称 (e);

    (2)查询提供销售(图书表中有)但没有销售过(没在订单明细表中出现)的图书名称和出版社。

    SELECT 图书名称,出版社

    FROM 图书

    WHERE NOT EXISTS (

    SELECT (f)

    FROM 订单明细

    WHERE (g));

    (3)查询订购图书数量最多的会员名及其订购的数量。

    SELECT 用户名, (h)

    FROM订单,订单明细

    WHERE (i)

    GROUP BY 用户名

    HAVING (j)

    (SELECT SUM (数量)

    FROM 订单,订单明细

    WHERE 订单.订单编号=订单明细.订单编号

    GROUP BY 用户名);

    (4)为了统计会员的购买行为信息,实施有意义的客户关怀策略,查询会员的平均订购间隔时间,考虑多次购买图书和一次购买图书的情况(其中,DATEDIFF函数表示两个日期之间的天数)。

    SELECT 用户名,CASE WHEN (k)

    THEN DATEDIFF (MAX (订购日期),MIN (订购日期)) / (1)

    ELSE DATEDIFF(CURRENT_TIMESTAMP,MIN(订购日期))

    END AS AVG GAP

    FROM 订单

    (m);


    正确答案:(1)(d)图书名称作者出版社出版日期 (e)LIKE'%数据库%' (2)(f)* (g)图书.图书编号=订单明细.图书编号 (3)(h)SUM(数量) (i)订单.订单编号=订单明细.订单编号 (j) SUM(数量)>=ALL (4)(k)COUNT(*)>1 (l)(COUNT(*)-1或COUNT(*)也给分 (m)GROUP BY 用户名
    (1)(d)图书名称,作者,出版社,出版日期 (e)LIKE'%数据库%' (2)(f)* (g)图书.图书编号=订单明细.图书编号 (3)(h)SUM(数量) (i)订单.订单编号=订单明细.订单编号 (j) SUM(数量)>=ALL (4)(k)COUNT(*)>1 (l)(COUNT(*)-1或COUNT(*)也给分 (m)GROUP BY 用户名 解析:本题考查查询语句SELECT的语法,查询是SQL的重要内容。
    (1)考查基本的SQL查询语法,SELECT后是要查询的属性,查询条件是包含“数据库”的图书,因此用LIKE关键字。
    (2)考查NOTEXISTS语法,(f)处填*。该查询为相关查询,因此(g)处的条件为图书.图书编号=订单明细.图书编号。
    (3)考查较复杂的嵌套查询、分组查询和ALL关键字。子查询得到所有会员的订购数,题目要求查询订购数最多的会员名和订购数,因此(j)的答案为SUM(数量)>=ALL。
    (4)考查分组查询、聚集函数和CASE语法。平均订购间隔时间对一次购买和多次购买的会员有不同的计算方式,对一次购买的会员,平均订购时间为当前时间—订购时间;而对于多次购买的会员,平均订购时间为(最晚的订购时间—最早的订购时间)/间隔数,间隔数为订购数-1。

  • 第7题:

    图书(图书号,图书名,作者编号,出版社,出版日期)

    作者(作者姓名,作者编号,年龄,性别)

    用SQL语句查询年龄小于平均年龄的作者姓名、图书名,出版社。


    正确答案:
            

  • 第8题:

    图书(图书编号C(6),书名C(16),作者C(6),出版单位C(20),单价N(6,2)) 读者(借书证号C(4),单位C(8),姓名C(6),性别C(2),职称C(6),地址C(20)) 借阅(借书证号C(4),图书编号C(、6),借书日期D(8),还书日期D(8)) 如果要查询所藏图书中各个出版社图书的最高单价、平均单价和册数,应使用的SQL语句是( )。

    A. SELECT出版单位,MAX(单价),AVG(单价),COUNT(*);FROM图书; GROUP BY出版单位

    B. SELECT出版单位,MAX(单价),AVG(单价),COUNT(*);FROM图书; HAVING出版单位

    C. SELECT出版单位,MIN(单价),AVG(单价),COUNT($);FROM图书 GROUP BY出版单位

    D. SELECT出版单位,MIN(单价),AVG(单价),COUNT($);FROM图书; HAVING出版单位


    正确答案:A
    求各个出版社图书的相关信息,必须用GROUP BY短语对各个出版社进行分组,HAVING短语必须与GROUP BY短语一起出现,不能单独使用。求最高单价使用最大值函数为MAx,COUNT用以计数。

  • 第9题:

    查询北京作者出版的图书情况,要求包含作者姓名、书名和价格信息,并按图书价格降序排列,下列SQL语句正确的是( )。

    A.SELECT 作者姓名,书名,价格 FROM 图书,作者 ;

    JOIN 图书.作者编号=作者.作者编号;

    WHERE 所在城市="北京";

    ORDER BY 价格 DESC

    B.SELECT 作者姓名,书名,价格 FROM 图书,作者 ;

    JOIN 图书.作者编号=作者.作者编号;

    WHERE 所在城市="北京";

    ORDER BY 价格

    C.SELECT 作者姓名,书名,价格 FROM 图书,作者 ;

    WHERE 图书.作者编号 = 作者.作者编号;

    AND 所在城市="北京";

    ORDER BY 价格 DESC

    D.SELECT 作者姓名,书名,价格 FROM 图书,作者 ;

    WHERE 图书.作者编号 = 作者.作者编号;

    AND 所在城市 ="北京";

    ORDER BY 价格


    正确答案:C

  • 第10题:

    已知图书管理系统包含1张图书关系表,其模式为:图书表(书号,书名,出版社,作者,馆藏册数)。要查找书号为“B002”的图书的书名、出版社、作者和馆藏册数,可用SQL语句:SELECT书名,出版社,作者,馆藏册数FROM图书表WHERE()


    正确答案:书号=‘B002’

  • 第11题:

    填空题
    已知图书管理系统包含1张图书关系表,其模式为:图书表(书号,书名,出版社,作者,馆藏册数)。要查找书号为“B002”的图书的书名、出版社、作者和馆藏册数,可用SQL语句:SELECT书名,出版社,作者,馆藏册数FROM图书表WHERE()

    正确答案: 书号=‘B002’
    解析: 暂无解析

  • 第12题:

    填空题
    已知图书管理系统包含一张图书表,其模式为:图书表(书号,书名,出版社,作者,馆藏册数)。要查找借阅书号为“B001”的书名、作者和出版社,可用SQL语句:SELECT 书名,作者,出版社 FROM()WHERE 书号="B001"。

    正确答案: 图书表
    解析: 暂无解析

  • 第13题:

    对于图书管理数据库,要查询所藏图书中,各个出版社的图书最高单价、平均单价和册数,下面SQL语句正确的是______。 SELECT出版单位,______,______,______; FROM图书管理!图书______出版单位

    A.MIN(单价) AVGAGE(单价) COUNT(*) GROUP BY

    B.MAX(单价) AVG(单价) COUNT(*) ORDER BY

    C.MAX(单价) AVG(单价) SUM(*) ORDER BY

    D.MAX(单价) AVG(单价) COUNT(*) GROUP BY


    正确答案:D

  • 第14题:

    查询2011年被借过图书的书名、出版社和借书日期,正确的SQL语句是( )。

    A.SELECT书名,出版社,借书日期FROM图书,借书记录 WHERE借书日期=2011 AND图书.索书号=借书记录.索书号

    B.SELECT书名,出版社,借书日期FROM图书,借书记录 WHERE借书日期=YEAR(2011)AND图书.索书号=借书记录.索书号

    C.SELECT书名,出版社,借书日期FROM图书,借书记录 WHERE图书.索书号=借书记录.索书号AND YEAR(借书日期)=2011

    D.SELECT书名,出版社,借书日期FROM图书,借书记录 图书.索书号=借书记录.索书号AND WHERE YEAR(借书日期)=YEAR(2011)


    正确答案:C
    C。【解析】根据题干所要查询的字段为书名、出版社和借书日期,其中涉及的表为图书和借书记录表,其中用图书.索书号和借书记录.索书号进行连接,并且结束日期为2011,其中年要使用YEAR函数,所以答案选择C。

  • 第15题:

    对于图书管理数据库,检索电子工业出版社的所有图书的书名和书价,检索结果按书价降序排列。下面SQL语句正确的是 SELECT书名,单价FROM图书WHERE出版单位=“电子工业出版社”; ______

    A.GROUP BY单价DESC

    B.ORDER BY单价DESC

    C.ORDER BY单价ASC

    D.GROUP单价ASC


    正确答案:B
    解析:本题的目的是检索电子工业出版社的所有图书的书名和书价,检索结果按书价降序排列。因为需要对检索结果按书价将序排列,因此需要字句ORDER BY并且需要配合关键字DESC使用,因此能够完成此任务的SQL语句如下: SELECT书名,单价FROM图书WHERE出版单位=“电子工业出版社”ORDER BY单价DESC因此本题的正确答案应该是B。

  • 第16题:

    对于图书管理数据库,查询所藏图书中,有两种及两种以上的图书出版社所出版图书的最高单价和平均单价。下面SQL语句正确的是 SELECT出版单位,MAX(单价),AVG(单价)FROM图书; ______

    A.GROUP BY出版单位HAVING COUNT总编号>=2

    B.GROUP BY出版单位HAVING COUNT(DISTINCT总编号)>=2

    C.GROUP BY出版单位>=2

    D.WHERE总编号>=2


    正确答案:B
    解析:本题的目的是查询所藏图书中,有两种及两种以上的图书出版社所出版图书的最高单价和平均单价。因为需要求图书的最高单价和平均单价,因此需要关键字MAX和AVG;同时题目还要求这些出版社必须有两种及两种以上的图书,因此还必须利用COUNT()函数来对出版社的图书数量进行统计,并且还需要对图书按照出版单位进行分组。因此能够完成题目所要求任务的SQL语句如下: SELECT出版单位,MAX(单价),AVG(单价) FROM图书GROUP BY出版单位HAVING COUNT(DISTINCT总编号)>=2因此本题的答案应该为B。

  • 第17题:

    对于图书管理数据库,检索藏书中比高等教育出版社的所有图书的书价更高的书,下面SQL语句正确的是______。 SELECT*FROM 图书 WHERE 单价>ALL;

    A.SELECT 书名 FROM 图书 WHERE 出版单位="高等教育出版社"

    B.(SELECT 单价 FROM 图书 WHERE 出版单位="高等教育出版社")

    C.SELECT 单价 FROM 图书 WHERE 读者.借书证号=借阅.借书证号

    D.(SELECT 书名 FROM 图书 WHERE 读者.借书证号=借阅.借书证号)


    正确答案:B
    解析:因为题目的要求是检索藏书中比高等教育出版社的所有图书的书价更高的书,因此需要使用关键字ALL,并且需要配合一个嵌套查询,因此本题应该使用的SQL语句如下:
      SELECT*FROM 图书 WHERE 单价>ALL;
      (SELECT 单价 FROM 图书 WHERE 出版单位="高等教育出版社")通过比较,可以看出正确答案应该是B。

  • 第18题:

    在SQL server 2000中,设有图书表(书号,书名,类别,单价)和图书印刷表(书号,印刷日期,印刷数量,印次),每个书号代表一种图书。书号、书名和类别的数据类型均为varehar(20),单价、印刷数量和印次的数据类型均为int,印刷日期的数据类型大smalldatetime.现需查询指定类别的图书在指定年份后(含指定年份)累计印刷总数量。请写出实现该功能的标量函数。


    正确答案:Create function fun (@class varchar(20)@orderyearChar(4) Return int As Begin Declare @tem smalldatatime Declare @cnt int set@tem=convert(smallaatetime@orderyear) select @cnt=sum(印刷数目)from 图书表 join 图书印刷表 on图书表.书号=图书印刷表.书号 where 类别=@class and 日期>@tem return @cnt end
    Create function fun (@class varchar(20),@orderyearChar(4) Return int As Begin Declare @tem smalldatatime Declare @cnt int set@tem=convert(smallaatetime,@orderyear) select @cnt=sum(印刷数目)from 图书表 join 图书印刷表 on图书表.书号=图书印刷表.书号 where 类别=@class and 日期>@tem return @cnt end

  • 第19题:

    查询2011年被借过图书的书名、出版社和借书日期,正确的SQL语句是

    A) SELECT书名,出版社,借书日期FROM图书,借书记录

    WHERE借书日期=2011 AND图书.索书号=借书记录.索书号

    B) SELECT书名,出版社,借书日期FROM图书,借书记录

    WHERE借书日期=YEAR(2011) AND图书.索书号=借书记录.索书号

    C) SELECT书名,出版社,借书日期FROM图书,借书记录

    WHERE图书.索书号=借书记录.索书号ANDYEAR(借书日期)=2011

    D) SELECT书名,出版社,借书日期FROM图书,借书记录

    图书.索书号=借书记录.索书号AND WHERE YEAR(借书日期)=YEAR(2011)


    正确答案:C
    【答案】:C
    【知识点】:函数YEAR()在查询语句中的使用方法
    【解析】:查询2011年被借过的图书信息,在WHERE语句中,条件应为YEAR(借书日期)=2011,选项A、B、D中的用YEAR()函数设置条件的方法都是错误的,故选C。

  • 第20题:

    "图书"表中有字符型字段“图书号”。要求用SQL DELETE命令将图书号以字母A开头的图书记录全部打上删除标记,正确的命令是( )。

    A. DELETE FROM图书FOR图书号LIKE”A%”

    B. DELETE FROM图书WHILE图书号LIKE”A%”

    C. DELETE FROM图书WHERE图书号=”A%”

    D. DELETE FROM图书WHERE图书号LIKE”A%”


    正确答案:D
    SQL从表中删除数据的命令格式如下:DELETE FROM表名[WHERE条件]
    正确答案为:DELETE FROM图书WHERE图书号LIKE“A%”。这里的LIKE是字符串匹配运算符,通配符“%”表示0个或多个字符。

  • 第21题:

    已知图书管理系统包含一张图书表,其模式为:图书表(书号,书名,出版社,作者,馆藏册数)。要查找借阅书号为“B001”的书名、作者和出版社,可用SQL语句:SELECT 书名,作者,出版社 FROM()WHERE 书号="B001"。


    正确答案:图书表

  • 第22题:

    单选题
    查询2011年被借过图书的书名、出版社和借书日期,正确的SQL语句是(  )。
    A


    SELECT书名,出版社,借书日期FROM图书,借书记录
    WHERE借书日期=2011 AND图书.索书号=借书记录.索书号

    B


    SELECT书名,出版社,借书13期FROM图书,借书记录
    WHERE借书日期=YEAR(2011)AND图书.索书号=借书记录.索书号

    C


    SELECT书名,出版社,借书日期FROM图书,借书记录
    WHERE图书.索书号=借书记录.索书号AND YEAR(借书日期)=2011

    D


    SELECT书名,出版社,借书日期FROM图书,借书记录图书.索书号=借书记录.索书号AND
    WHERE YEAR(借书日期)=YEAR(2011)


    正确答案: C
    解析:
    考查嵌套查询的知识点。查询2011年被借过的图书信息,在WHERE语句中,条件应为
    图书.索书号=借书记录.索书号AND YEAR(借书日期)=2011。

  • 第23题:

    单选题
    查询主编为“章平”的所有图书的书名和出版社,正确的SQL语句是(  )。
    A

    SELECT书名,出版社FROM图书WHERE主编=“章平”

    B

    SELECT书名,出版社FROM图书WHERE主编=章平

    C

    SELECT书名,出版社FROM图书WHERE“主编”=“章平”

    D

    SELECT书名,出版社FROM图书WHERE“主编”=章平


    正确答案: A
    解析:
    查询条件WHERE中,字段名不能加引号,字段值“章平”要加引号。