( 11 ) “ 歌手 ” 表中有 “ 歌手号 ” 、 “ 姓名 ” 和 “ 最后得分 ” 三个字段, “ 最后得分 ” 越高名

题目

( 11 ) “ 歌手 ” 表中有 “ 歌手号 ” 、 “ 姓名 ” 和 “ 最后得分 ” 三个字段, “ 最后得分 ” 越高名次越靠前 ,查询前 10 名歌手的 SQL 语句是 : SELECT * 【 11 】 FROM 歌手 ORDER BY 最后得分 【 12 】 。

如果没有搜索结果或未解决您的问题,请直接 联系老师 获取答案。
相似问题和答案

第1题:

假设temp.dbf数据表中有两个字段“歌手号’’和“最后得分”,下面程序段的功能是:将temp.dbf中歌手的“最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段),在下划线处应该填写的SQL语句是( )。

USE歌手

DOWHILE.NOT.EOF()

REPLACE歌手.最后得分WITHa[2]

SKIP

ENDDO

A)SELECT﹡FROMtempWHEREtemp.歌手号=歌手.歌手号TOARRAYa

B)SELECT﹡FROMtempWHEREtemp.歌手号=歌手.歌手号INTOARRAYa

C)SELECT﹡FROMtempWHEREtemp.歌手号=歌手.歌手号TOFILEa

D)SELECT﹡FROMtempWHEREtemp.歌手号=歌手.歌手号INTOFILEa


正确答案:B
选项A)的命令格式错误,将查询结果保存在数组里应该是:INTOARRAY短语。由程序语句“REPLACE歌手最后得分WITH a[2]”中的“a[2]”可以看出a是一个数组名, a[2]指的是数组a中的第2个元素,所以填写的SQL语句中一定用到了数组a。而选项C)和选项D)中,足将查询结果保存在文本文件中,故可以排除。程序的功能是:在歌手表中,从第一条记录开始,在temp表中找到与该记录的歌手号相同的记录,并把记录的所有字段保存在数组a中,由于temp表中只有“歌手号”和“最后得分”两个字段,所以数组a中有两个元索,第一个是“歌手号”,第二个是“最后得分”,再用REPLACE命令将歌手表中当前记录中的 “最后得分”字段用a[2]替换,即填入了“最后得分”。当一条记录处理结束之后,SKIP命令将记录指针指向歌手表的下一条记录,进行同样的处理,最终将歌手表中的“最后得分”字段填写完毕。

第2题:

假没temp.dbf数据表中有两个字段“歌手号”和“最后得分”。下面程序段的功能是:将temp.dbf中歌手的“最后得分”填人“歌手”表对应歌手的“最后得分”字段中(假说已增加了该字段)。在下划线处应该填写的sqi。语句是( )。 USE歌手 DO WHILE.NOT.EOF REPLACE歌手.最后得分wITH a[2] SKIP ENDⅨ)

A.SELECT*FROM temp WHERE temp.歌手号=歌手.歌手号TOARRAY a

B.SEl,ECT*FROM temp WHERE temp.歌手号=歌手.歌手号INTARRAYa

C.SELECT*FROM temp WHERE temp.歌手号=歌手.歌手号TFILE a

D.SEl,ECT*FROM temp WHERE temp.歌手号=歌手.歌手号INTO FILE a


正确答案:B
B。【解析】从下划线的下一条语句中的a[2]可以看出:a是一个数组-所以要填写的SQL语句的查询去向应该是数组。

第3题:

第下列各题使用的数据表如下: 当前目录下有数据库:大奖赛.dbc,其中有数据库表“歌手.dbf”、“评分.dbf”。 “歌手”表: “评分”表:

歌手号 姓名

1001

张三

2001

李四

3001

王五

4001

李六

歌手号

分数

评委号

1001

9.8

101

1001

9.6

102

1001

9.7

103

1001

9.8

104

为“歌手”表增加一个字段“最后得分”的SQL语句是( )。

A.ALTER TABLE歌手ADD最后得分F(6.2)

B.ALTFER DBF歌手ADD最后得分F6,2

C.CHANGE TABl。E歌手ADD最后得分F(6。2)

D.CHANGE TABLE学院INSERT最后得分F6,2


正确答案:A
A。【解析】为表增加字段的SQL命令是ALTERTABLE,格式是ALTERTABLE<表文件名>ADD字段名字段类型(宽度[,小数位数])。

第4题:

与 “ SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分> = ALL ;(SELECT 最后得分 FROM 歌手 WHERE SUBSTR( 歌手号 ,1,1)="2") ” 等价的 SQL 语句是

A)SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分> = ;

(SELECT MAX( 最后得分 ) FROM 歌手 WHERE SUBSTR( 歌手号 ,1,1)="2")

B)SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分> = ;

(SELECT MIN( 最后得分 ) FROM 歌手 WHERE SUBSTR( 歌手号 ,1,1)="2")

C)SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分> =ANY ;

(SELECT 最后得分 FROM 歌手 WHERE SUBSTR( 歌手号 ,1,1)="2")

D)SELECT DISTINCT 歌手号 FROM 歌手 WHERE 最后得分> =SOME ;

(SELECT 最后得分 FROM 歌手 WHERE SUBSTR( 歌手号 ,1,1)="2")


正确答案:A

第5题:

假设 temp.dbf 数据表中有两个字段 “ 歌手号 ” 和 “ 最后得分 ” 。 下面程序的功能是 : 将 temp.dbf 中歌手的 “ 最后得分 ” 填入 “ 歌手 ” 表对应歌手的 “ 最后得分 ” 字段中 ( 假设已增加了该字段 ) 。 在下划线处应该填写的 SQ L 语句是

USE 歌手

DO WHILE .NOT.EOF()

_________________

REPLACE 歌手 . 最后得分 WITH a[2]

SKIP

ENDDO

A)SELECT * FROM temp WHERE temp. 歌手号 = 歌手 . 歌手号 TO ARRAY a

B)SELECT * FROM temp WHERE temp. 歌手号 = 歌手 . 歌手号 INTO ARRAY a

C)SELECT * FROM temp WHERE temp. 歌手号 = 歌手 . 歌手号 TO FILE a

D)SELECT * FROM temp WHERE temp. 歌手号 = 歌手 . 歌手号 INTO FILE a


正确答案:B

第6题:

假设每个歌手的 “ 最后得分 ” 的 计 算方法是 : 去掉一个最高分 和一 个最低分,取剩下分数的平均分 。根据 “ 评分 ” 表求每个歌手的 “ 最后得分 ” 并存储于 表 TEM P 中 。 表 TEM P 中有两个字段 : “ 歌手号 ” 和 “ 最后得分 ” ,并且按最后得分降序排列,生成表 TEMP 的 SQL 语句是 :

A)SELECT 歌手号 ,( COUNT ( 分数 ) - MAX( 分数 )-MIN( 分数 ))/(SUM(*)-2) 最后得分 ;

FROM 评分 INTO DBF TEMP GROUP BY 歌手号 ORDER BY 最后得分 DESC

B)SELECT 歌手号 ,( COUNT ( 分数 )-MAX( 分数 )-MIN( 分数 ))/(SUM(*)-2) 最后得分 ;

FROM 评分 INTO DBF TEMP GROUP BY 评委号 ORDER BY 最后得分 DESC

C)SELECT 歌手号 ,( SUM ( 分数 ) -MAX( 分数 )-MIN( 分数 ))/(COUNT(*)-2) 最后得分 ;

FROM 评分 INTO DBF TEMP GROUP BY 评委号 ORDER BY 最后得分 DESC

D)SELECT 歌手号 ,(SUM( 分数 )-MAX( 分数 )-MIN( 分数 ))/(COUNT(*)-2) 最后得分 ;

FROM 评分 INTO DBF TEMP GROUP BY 歌手号 ORDER BY 最后得分 DESC


正确答案:D

第7题:

与“SELECT DISTINCT歌手号:FROM歌手WHERE最后得分>=ALL; (SELECT最后得分FROM歌手WHERE SUBSTR(歌手号,1,1)=“2”)”等价的SQL语句是 ______。

A.SELECT DISTINCT歌手号FROM歌手WHERE最后得分>=; (SELECT MAX(最后得分)FROM歌手WHERE SUBSTR(歌手号,1,1)=“2”)

B.SELECT DISTINCT歌手号FROM歌手WHERE最后得分>=; (SELECT MIX(最后得分)FROM歌手WHERE SUBSTR(歌手号,1,1)=“2”)

C.SELECT DISTINCT歌手号FROM歌手WHERE最后得分>=ANY; (SELECT最后得分FROM歌手WHERE SUBSTR(歌手号,1,1)=“2”)

D.SELECT DISTINCT歌手号FROM歌手WHERE最后得分>=SOME; (SELECT最后得分FROM歌手WHERE SUBSTR(歌手号,1,1)=“2”)


正确答案:A
解析:此题要求查询所有最后得分大于或等于歌手表中歌手号第一位是2的歌手最后得分的歌手号。题面查询是用ALL量词,与它等价的查询是选项A。

第8题:

假设temp.dbf数据表中有两个字段“歌手号”和“最后得分”。下面程序段的功能是:将temp.dbf中歌手的“最后得分”填入“歌手”表对应歌手的“最后得分”字段中(假设已增加了该字段)。在下划线处应该填写的SQL语句是 ______。 USE歌手 DO WHILE.NOT.EOF() _________________ REPLACE歌手.最后得分WITH a [2] SKIP ENDDO

A.SELECT*FROM temp WHERE temp.歌手号=歌手.歌手号TO ARRAY a

B.SELECT*FROM temp WHERE temp.歌手号=歌手.歌手号INTO ARRAY a

C.SELECT*FROM temp WHERE temp.歌手号=歌手.歌手号TOFILEa

D.SELECT*FROM temp WHERE temp.歌手号=歌手.歌手号INTO FILE a


正确答案:B
解析:将查询结果放在数组中应使用INTO ARRAY Array Name短语,Array Name可以是任意的数组变量名。将查询结果放在文本文件中应使用TO FILE File Name [ADDITIVE]短语,其中FileName给出了文本文件名。

第9题:

假设每个歌手的“最后得分”的计算方法是:去掉一个最高分和一个最低分,取剩下分数的平均分。根据“评分”表求每个歌手的“最后得分”并存储于表TEMP中,表 TEMP中有两个字段:“歌手号”和“最后得分”,并且按最后得分降序排列,生成表 TEMP的SQL语句是 ______。

A.SELECT歌手号,(COUNT(分数)-MAX(分数)-MIN(分数)/SUM(*)-2)最后得分; FROM评分INTO DBF TEMP GROUP BY歌手号ORDER BY最后得分DESC

B.SELECT歌手号,(COUNT(分数)-MAX(分数)-MIN(分数)/(SUM(*)-2)最后得分; FROM评分INTO DBF TEMP GROUP BY评委号ORDER BY最后得分DESC

C.SELECT歌手号,(SUM(分数)-MAX(分数)-MIN(分数)/COUNT(*)-2)最后得分; FROM评分INTO DBF TEMP GROUP BY评委号ORDER BY最后得分DESC

D.SELECT歌手号,(SUM(分数)-MAX(分数)-MIN(分数)/COUNT(*)-2)最后得分; FROM评分INTO DBF TEMP GROUP BY歌手号ORDER BY最后得分DESC


正确答案:D
解析:此题根据题意应该根据歌手号进行分组,所以排除B、C选项;歌手的最后得分应该是分数的总和去掉一个最高分和一个最低,即SUM(分数)-MAX(分数)-MIN(分数)。