2013-03-01 110 views
0

我有一个customer_id和order_id的表,我想根据customer_id进行排序。这在Vertica SQL中如何完成?如何在vertica中进行排序?

 
c_id o_id 
1  1 
2  3 
1  4 
2  5 
3  6 
3  7 

我想:

 
c_id o_id seq 
1  1  1 
1  4  2 
2  3  1 
2  5  2 
3  6  1 
3  7  2 

回答

2

据我所知Vertica的支持(标准)窗口功能,所以下面应该工作:

select c_id, 
     o_id, 
     row_number() over (partition by c_id order by o_id) as seq 
from the_table 
order by c_id, o_id 
+0

从OP的预期结果,似乎那他/她想要'按ORDER BY c_id,o_id',然后有'12 12 ...'序列。 – 2013-03-01 23:57:19

+0

@ PM77-1:你说得对,我加了。 – 2013-03-02 07:12:46

相关问题