在SQL中,你可以使用ROW_NUMBER()
函数来为结果集中的每一行新增一个序号。这个序号是基于某个排序条件的分区排序结果。
以下是一个简单的例子,假设我们有一个名为students
的表,它有两列:class_id
和student_name
。我们想为同一个班级内的学生创建一个序号,按照student_name
排序:
SELECT class_id, student_name, ROW_NUMBER() OVER (PARTITION BY class_id ORDER BY student_name) AS seq_num FROM students;
在这个查询中,ROW_NUMBER()
函数会为每个班级内的学生提供一个序号,序号根据学生名字的字母顺序排序。如果你想要按照其他条件排序,只需在ORDER BY
子句中修改即可。