关于南大通运8ampp数据库的排序函数介绍
RANK OVER函数
RANK() OVER([PARTITION BY col_name1,col_name2,…] ORDER BY
col_name1 [ASC/DESC], col_name2 [ASC/DESC],…)
功能描述:
根据 ORDER BY 子句中表达式的值,从查询返回的每一行计算它们与其它
行的相对位置。组内的数据按 ORDER BY 子句排序,然后给每一行赋一个号,
从而形成一个序列,该序列从 1 开始,往后累加。
每次 ORDER BY 表达式的值发生变化时,该序列也随之增加。有同样值的
行得到同样的数字序号(认为 null 是相等的)。
如果两行得到同样的排序,则后面的序数将跳跃。例如,两行序数为 1,
则没有序数 2,序列将给组中的下一行分配值 3。
仅 Express 引擎支持。
例子
SELECT RANK() OVER(ORDER BY C_TIME) as orderNum
FROM event_logs
DENSE_RANK OVER函数
DENSE_RANK( ) over([PARTITION BY col_name1,col_name2,…] ORDER BY
col_name1 [ASC/DESC], col_name2 [ASC/DESC],…)
功能描述:
基本功能同 rank 类似&#