先决条件–在MS SQL Server中选择
假设用户想要从整个机构中提取最优秀的学生,但必须使用一些复杂的查询来提取数据。为了避免复杂性,用户可以使用“选择顶部”。
“选择顶部”提取有限数量的行。这样可以得到准确的数据,并减少时间消耗。
句法 –
select top (expression) [percent] [with ties]
from table_name
order by column_name
分析语法–
- 顶部是从列表顶部提取数据的关键字。
- 表达式是要从表中提取的数据。
- 百分比是需要从表中提取的行数。
- 使用“领带”返回与最后一行共享相同值的行。在某些情况下,可以检索更多行。
order by子句用于按时间顺序排列数据。必须在语法中使用此子句,否则会导致错误。
例子 –
如果用户要提取某个机构的前5名学生,则查询写为–
select top 5 name rollnumber gpa
from student
order by name ASC
输出 –
Roll number | Name | GPA |
---|---|---|
114 | Aisha | 9.5 |
116 | Apoorva | 9.4 |
119 | Mina | 8.7 |
114 | Rita | 8.1 |
118 | Veena | 7.7 |
这样,可以提取所需的数据。最后一行的学生的平均GPA为7.7,如果还有更多的学生共享相同的数字,则查询必须写为–
select top 8 with ties
name rollnumber gpa
from student
order by name ASC
输出 –
Roll number | Name | GPA |
---|---|---|
114 | Aisha | 9.5 |
116 | Apoorva | 9.4 |
119 | Mina | 8.7 |
114 | Rita | 8.1 |
118 | Veena | 7.7 |
110 | Vinitha | 7.7 |
101 | Yamini | 7.7 |
107 | Zubaida | 7.7 |
ASC将数据从升序排列到降序。如果必须将数据从降序到升序排列,则可以使用DESC。