问题 填空题

下题对自由表“评分.dbf”进行操作。“评分.dbf”的内容用命令LIST显示的结果如下:

记录号 歌手号 分数评委号

1 1001 9.80 101

2 1001 9.60 102

3 1001 9.70 103

4 1001 9.80 104

5 1001 9.90 105

6 1002 9.90 10l

7 1002 9.95 102

8 1002 9.70 103

9 1002 9.88 104

10 1002 9.80 105

11 1002 9.82 106

执行下列程序段的结果是 (11)

USE评分

i=10

a=0

LOCATE FOR歌手号="1001"

DO WHILE.NOT.EOF()

IF分数<i

i=分数

ENDIF

IF分数>a

a=分数

ENDIF

CONTINUE

ENDDO

a

执行下列SQL语句以后,scoregroup.dbf表中的记录个数是 (12) ,记录号为1的记录的最低分的内容是 (13)

SELECT评委号,min(分数)as最低分;

FROM评分;

GROUP BY评委号;

INTO TABLE scoregroup.dbf ORDER BY评委号,最低分DESC

向自由表“评分.dbf”中增加一条记录的SQL语句是:

INSERT INTO评分 (14) ("1001",9.45,"106")

将自由表“评分.dbf”的“评委号”字段的长度改为4的SQL语句是:

ALTER TABLE评分 (15) 评委号C(4)

文中(13)处应为()。

答案

参考答案:9.80

解析:

通过该查询语句中的…GROUP BY评委号”可知是按评委号分的组,再通过“SELECT评委号,min(分数)as最低分”可知要求查询每个评委给歌手打出的最低分。评分表中共有6个评委,每个评委有一个最低分,共有6个最低分,查询后会生成6条记录;通过“INTO TABLE seoregroup.dbt ORDER BY评委号,最低分DESC”可知将查询结果放到新表scoregroup.dbf中,并先按评委号升序排列,评委号相同再按最低分降序排列。那么最后查询的结果是:

评委号最低分

101 9.80

102 9.60

103 9.70

104 9.80

105 9.80

106 9.82

所以新表中会有6条记录,第一条记录的最低分是9.80。

单项选择题
单项选择题