题目
有如下图3所示的成绩表(表名字为“成绩表”),要查询语文成绩高于80的男同学信息,结果按语文成绩降序排列,以下SQL语句正确的是()。计算机基础成绩表-|||-学号 姓名 性别 语文 数学 英语 平均分-|||-20190301 吴大力 男 78 76 87 80-|||-20190302 赵伟洪 女 87 65 58 70-|||-20190303 刘红红 女 77 78 87 81-|||-20190304 张伟国 男 65 67 65 66-|||-20190305 张胡康 男 56 54 51 54-|||-20190306 孙小晶 女 63 67 58 63-|||-20190307 于波海 男 87 85 81 84-|||-20190308 郭聚波 男 76 78 87 80-|||-20190309 张阳阳 男 92 89 95 92-|||-20190309 张阳阳 男 92 89 95 92-|||-20190310 李俊明 男 59 67 77 68-|||-图3A,SELECT*FROM成绩表WHERE性别=“男”AND语文>80B,SELECT*FROM成绩表WHERE性别B=“男”OR“语文>80”ORDER BY 语文 DESCC,SELECT*FROM成绩表WHERE性别=“男”AND 语文>80 ORDER BY 语文 ASCD,SELECT*FROM成绩表WHERE性别=“男”AND 语文>80 ORDER BY 语文
有如下图3所示的成绩表(表名字为“成绩表”),要查询语文成绩高于80的男同学信息,结果按语文成绩降序排列,以下SQL语句正确的是()。

A,SELECT*FROM成绩表WHERE性别=“男”AND语文>80
B,SELECT*FROM成绩表WHERE性别B=“男”OR“语文>80”ORDER BY 语文 DESC
C,SELECT*FROM成绩表WHERE性别=“男”AND 语文>80 ORDER BY 语文 ASC
D,SELECT*FROM成绩表WHERE性别=“男”AND 语文>80 ORDER BY 语文
题目解答
答案
要查询语文成绩高于80的男同学信息,并按语文成绩降序排列,正确的SQL语句应该包含以下几个部分:
SELECT * FROM 成绩表:选择成绩表中的所有列。
WHERE 性别='男' AND 语文>80:筛选条件为性别为男且语文成绩大于80。
ORDER BY 语文 DESC:按照语文成绩降序排列。
根据这些条件,正确的SQL语句是:
SELECT * FROM 成绩表 WHERE 性别='男' AND 语文>80 ORDER BY 语文 DESC
选项B中的ORDER BY子句使用了DESC关键字,但是WHERE子句中的条件错误地使用了OR而不是AND。
选项C中的ORDER BY子句使用了ASC关键字,这会导致结果按升序排列,而不是降序。
选项D中的ORDER BY子句没有指定是升序还是降序,因此默认为升序排列,这不符合题目要求的降序排列。
答案选择为A.
解析
步骤 1:确定查询条件
要查询语文成绩高于80的男同学信息,需要使用WHERE子句来筛选性别为“男”且语文成绩大于80的记录。
步骤 2:确定排序方式
结果需要按语文成绩降序排列,因此需要使用ORDER BY子句,并指定降序排序。
步骤 3:选择正确的SQL语句
根据上述条件,正确的SQL语句应该包含以下部分:
- SELECT * FROM 成绩表:选择成绩表中的所有列。
- WHERE 性别='男' AND 语文>80:筛选条件为性别为男且语文成绩大于80。
- ORDER BY 语文 DESC:按照语文成绩降序排列。
选项A:SELECT * FROM 成绩表 WHERE 性别='男' AND 语文>80
选项B:SELECT * FROM 成绩表 WHERE 性别='男' OR '语文>80' ORDER BY 语文 DESC
选项C:SELECT * FROM 成绩表 WHERE 性别='男' AND 语文>80 ORDER BY 语文 ASC
选项D:SELECT * FROM 成绩表 WHERE 性别='男' AND 语文>80 ORDER BY 语文
选项B中的WHERE子句使用了OR而不是AND,不符合题目要求。
选项C中的ORDER BY子句使用了ASC关键字,这会导致结果按升序排列,而不是降序。
选项D中的ORDER BY子句没有指定是升序还是降序,因此默认为升序排列,这不符合题目要求的降序排列。
要查询语文成绩高于80的男同学信息,需要使用WHERE子句来筛选性别为“男”且语文成绩大于80的记录。
步骤 2:确定排序方式
结果需要按语文成绩降序排列,因此需要使用ORDER BY子句,并指定降序排序。
步骤 3:选择正确的SQL语句
根据上述条件,正确的SQL语句应该包含以下部分:
- SELECT * FROM 成绩表:选择成绩表中的所有列。
- WHERE 性别='男' AND 语文>80:筛选条件为性别为男且语文成绩大于80。
- ORDER BY 语文 DESC:按照语文成绩降序排列。
选项A:SELECT * FROM 成绩表 WHERE 性别='男' AND 语文>80
选项B:SELECT * FROM 成绩表 WHERE 性别='男' OR '语文>80' ORDER BY 语文 DESC
选项C:SELECT * FROM 成绩表 WHERE 性别='男' AND 语文>80 ORDER BY 语文 ASC
选项D:SELECT * FROM 成绩表 WHERE 性别='男' AND 语文>80 ORDER BY 语文
选项B中的WHERE子句使用了OR而不是AND,不符合题目要求。
选项C中的ORDER BY子句使用了ASC关键字,这会导致结果按升序排列,而不是降序。
选项D中的ORDER BY子句没有指定是升序还是降序,因此默认为升序排列,这不符合题目要求的降序排列。