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

题目
单选题
查询金额最大的那10%订单的信息。正确的SQL语句是()。
A

SELECT * TOP 10 PERCENT FROM 订单

B

SELECT TOP 10% * FROM 订单 ORDER BY 金额

C

SELEC T* TOP 10 PERCENT FROM 订单 ORDER BY 金额

D

SELECT TOP 10 PERCENT * FROM 订单 ORDER BY 金额 DESC

参考答案和解析
正确答案: B
解析: 暂无解析
如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

将订单号为"0060"的订单金额改为169元,正确的SQL语句是A)UPDATE订单SET金额=169 WHERE订单号="0060"B)UPDATE订单SET金额WITH 169 WHERE订单号="0060"C)UPDATE FROM订单SET金额=169 WHERE订单号="0060"D)UPDATE FROM订单SET金额WITH 169 WHERE订单号="0060"


正确答案:A
本题考查的是对SQL语句的更新表书写格式的掌握。SQL语句的更新表书写格式为:
  UPDATE<表名> SET<列名1>=<表达式1>[<列名2>=<表达式2>…]
  [WHERE 条件表达式]
只有选项A符合语法格式。

第2题:

使用如下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)查询金额最大的那10%订单的信息。正确的SQL语句是______。

A.SELECT*TOP 10 PERCENT FROM 订单

B.SELECT TOP 10% *FROM 订单 ORDER BY 金额

C.SELECT*TOP 10 PERCENT FROM 订单 ORDER BY 金额

D.SELECT TOP 10 PERCENT * FROM 订单 ORDER BY 金额 DESC


正确答案:D
解析:Visual FoxPro的SELECT—SQL命令的一般语法格式如下:
    SELECT[ALL|DISTINCT]目标列表达式>[,目标列表达式>]…
    FROM基本表(或视图>[,基本表(或视图)>]…
    [WHERE条件表达式>]
    [GROUPBY列名1>[HAVING内部函数表达式>]]
    [ORDERBY列名2>[ASCIDESC]]
    [TOP数值表达式>[PERCENT]]
  说明:①ORDER BY子句:指定查询结果中记录按列名2>排序,默认升序。选项ASC表示升序,DESC表示降序。
  ②TOP子句:TOP子句必须与ORDER BY子句同时使用。数值表达式>表示在符合条件的记录中选取的记录数。范围1~32 767,排序后的若干记录只计一个。含PERCENT选项肘,数值表达式>表示百分比,记录数为小数时自动取整,范围0.01~99.99。

第3题:

第(29)~(35)题使用如下三个表:有如下三个表: 职员.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) (29)查询金额最大的那10%订单的信息。正确的SQL语句是A)SELECT*TOP 10 PERCENT FROM订单B)SELECT TOP 10%*FROM订单ORDER BY金额C)SELECT*TOP 10 PERCENT FROM订单ORDER BY金额D)SELECT TOP 10 PERCENT*FROM订单ORDER BY金额DESC


正确答案:D
查询金额最大的10%的订单,应该是按金额从高向低降序排列,显示前面10%,只有选项D的描述是完整的。

第4题:

查询订单数在3个以上、订单的平均金额200元以上的职员号。正确的SQL语句是

A.SELECT 职员号 FROM 订单 GROUP BY 职员号 HAVING COUNT(*)>3 AND AVG 金额>200

B.SELECT 职员号 FROM 订单 GROUP BY 职员号 HAVING COUNT(*)>3 AND AVG (金额)>200

C.SELECT 职员号 FROM 订单 GROUP BY 职员号 HAVING COUNT(*)>3 WHERE AVG (金额)>200

D.SELECT 职员号 FROM 订单 GROUP BY 职员号 WHERE COUNT(*)>3 AND AVG金额>200


正确答案:B
解析:查询订单的平均金额 200元以上,用平均函数表示为AVG(金额)>200,故可排除选项A和选项D;订单数在三个以上和订单的平均金额200元以上两个条件要同时满足是逻辑“与”关系,故选项B正确。

第5题:

第{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

第6题:

请根据如下查询语句,回答问题(d),(e)和(f)。

SELECT客户号

FROM订单,订单明细

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

产品号='02' AND

数量>10;

(d) 上述查询语句的功能是什么?请简要回答。(30个字以内)

(e) 将上述查询语句转换成对应的关系代数表达式。

(f) 上述SQL查询语句是否可以进一步优化?如可以,给出优化后的SQL查询语句。


正确答案:查询一次订购(或购买)产品号为02的数量大于10的客户号 (e) (f)可以优化。优化的SQL语句为: SELECT客户号 FROM 订单 WHERE 订单号 IN (SELECT 订单号 FROM 订单明细 WHERE产品号='02' AND数量>10);
查询一次订购(或购买)产品号为02的数量大于10的客户号 (e) (f)可以优化。优化的SQL语句为: SELECT客户号 FROM 订单 WHERE 订单号 IN (SELECT 订单号 FROM 订单明细 WHERE产品号='02' AND数量>10); 解析:本题考核的知识点包括SQL的查询命令与关系代数表达式的互相转换以及SQL的查询优化。
SELECT语句的功能是:查询一次订购(或购买)产品号为02的数量大于10的客户号。
根据关系代数表达式的定义,将上述查询语句转换成对应的关系代数表达式为:

该SELECT语句,在进行多表查询时,采用的是相关子查询。由于相关子查询查询时要做连接JOIN,性能不是最优。可以考虑采用不相关子查询,来提高性能。优化的 SQL语句为:
SELECT客户号
FROM订单
WHERE订单号IN
(SELECT订单号
FROM订单明细
WHERE产品号='02' AND数量>10);

第7题:

在考生文件夹里有表Customer和Order,用SQL SELECT语句查询所有客户的订单信息,要求在结果中包括公司名称、订单编号、金额和送货方式,按公司名称升序排序,再按订单号升序排序,查询结果放在results.dbf中,并要求完整的SQL SELECT语句保存在sql.prg文件中。


正确答案:步骤1:单击工具栏上的[新建]按钮打开[新建]对话框在[文件类型]区中选择“程序”单击[新建文件]。打开程序编辑窗口在其中输入SELECT命令。由于查询信息来源于两个表可以把这两个表根据客户编号建立内部连接使用“…FROM…WHERE…”子句。可用SELECT子句选定查询结果中包含的字段用ORDER BY子句设定要排序的字段用INTO子句设定结果存放在何处。写好SELECT语句后单击工具栏的[运行]按钮在弹出的询问对话框中选择“是”打开[另存为]对话框。在[保存文档为]文本框中输入“sql”单击[保存]按钮。SQL SELECT语句如下: SELECT Customer.公司名称Order.订单编号Order.金额Order.送货方式; FROM CustomerOrder WHERE Customer.客户编号=Order.客户编号; ORDER BY Customer.公司名称Order.订单编号; INTO TABLE results.dbf
步骤1:单击工具栏上的[新建]按钮,打开[新建]对话框,在[文件类型]区中选择“程序”,单击[新建文件]。打开程序编辑窗口,在其中输入SELECT命令。由于查询信息来源于两个表,可以把这两个表根据客户编号建立内部连接,使用“…FROM…WHERE…”子句。可用SELECT子句选定查询结果中包含的字段,用ORDER BY子句设定要排序的字段,用INTO子句设定结果存放在何处。写好SELECT语句后,单击工具栏的[运行]按钮,在弹出的询问对话框中选择“是”,打开[另存为]对话框。在[保存文档为]文本框中,输入“sql”,单击[保存]按钮。SQL SELECT语句如下: SELECT Customer.公司名称,Order.订单编号,Order.金额,Order.送货方式; FROM Customer,Order WHERE Customer.客户编号=Order.客户编号; ORDER BY Customer.公司名称,Order.订单编号; INTO TABLE results.dbf

第8题:

查询订单数在3个以上、订单的平均金额200元以上的职员号。正确的SQL语句是A) SELECT职员号FROM订单GROUP BY职员号HAVING COUNT(*)>3 AND AVG_金额>200B) SELECT职员号FROM订单GROUP BY职员号日AVING COUNT(*)>3 AND AVG_(金额)>200C) SELECT职员号FROM订单GROUP BY职员号HAVING COUNT(*)>3 WHERE AVG_(金额>200D) SELECT职员号FROM订单GROUP BY职员号WHERE COUNT(*)>3 AND_AVG金额>200


正确答案:B
查询订单的平均金额200元以上,用平均函数表示为AVG(金额)>200,故可排除选项A和选项D;订单数在三个以上和订单的平均金额200元以上两个条件要同时满足是逻辑“与”关系,故选项B正确。

第9题:

查询金额最大的那10%订单的信息。正确的SQL语句是

A.SELECT*TOP l0 PERCENT FROM订单

B.SELECT TOP l0%*FROM 订单 ORDER BY金额

C.SELECT*TOP l0 PERCENT FROM 订单 ORDER BY 金额

D.SELECT TOP l0 PERCENT*FROM 订单 ORDER BY 金额 DESC


正确答案:D
解析:查询金额最大的10%的订单,应该是按金额从高向低降序排列,显示前面10%,只有选项D的描述是完整的。

第10题:

将订单号为“0060”的订单金额改为169元,正确的SQL语句是

A.UPDATE 订单 SET 金额=169 WHERE 订单号=“0060”

B.UPDATE 订单 SET 金额 WITH l69 WHERE 订单号=“0060”

C.UPDATE FROM 订单 SET 金额=169 WHERE 订单号=“0060”

D.UPDATE FROM 订单 SET 金额 WITH l69 WHERE 订单号=“0060”


正确答案:A
解析:本题考查的是对SQL语句的更新表书写格式的掌握。SQL语句的更新表书写格式为:
UPDATE表名>SET列名1>=表达式1>[列名2>=表达式2>…]
[WHERE 条件表达式]
只有选项A符合语法格式。

更多相关问题