【发布时间】:2016-12-13 11:35:10
【问题描述】:
学生和成绩。 Students 包含三列 ID、Name 和 Marks、Grades-(grade,min_mark,max_mark)
Ketty 给 Eve 一个任务来生成一个包含三列的报告:名称、等级和标记。 Ketty 不想要那些成绩低于 8 分的学生的姓名。报告必须按成绩降序排列——即首先输入更高的成绩。如果分配给他们的同一年级 (1-10) 的学生不止一名,请按这些特定学生的姓名字母顺序排列这些学生。最后,如果分数低于 8 分,则使用“NULL”作为他们的名字,并按分数升序排列。
写一个查询来帮助 Eve。
注意 如果成绩小于8,则打印“NULL”作为名称。
我已经写了这个查询:
select name,grade,marks from students s join grades g on marks between min_mark and max_mark
where grade>7
order by 2 desc,name
select translate(name,name,'NULL'),grade,marks from students s join grades g on marks between min_mark and max_mark
where grade<=7
order by 3 desc
但不知道如何加入这两个查询。
【问题讨论】:
-
所以这看起来像是家庭作业
-
题是直接从HackerRank复制的
标签: mysql sql sql-server oracle