Oracle关键字Over、With用法
一: row_number()over(partition by col1 order by col2)表示根据col1分组,在分组内部根据col2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的) row_number()和rownum差不多,功能更强一点(可以在各个分组内从1开始排序)。 1例: select row_number() over(partition by orgid order by userid) as row_,username,orgid,userid from au_userinfo; 相当于根据orgid分组,然后给每组进行排名; 结果如下:
2例: select row_number() over(order by userid) as a,userid,username from au_userinfo; 相当于 order by userid排序;
二: with用法:相当于一个结果集表名: with aaaa as (select userid,username from au_userinfo) select userid,username from aaaa;
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |