Vertica:将LISTAGG中间结果订购到一定顺序吗?

时间:2019-04-26 12:00:41

标签: sql sql-order-by vertica listagg

很遗憾,Vertica不允许在LISTAGG中指定顺序。所以你的桌子没有这样的顺序

ID | Names | Values
1  | a,b,c | 3,1,2
2  | b,c,a | 7,9,7
3  | c,a,b | 1,2,3

Values的排序不正确:它们应该以降序排列,然后Names字段应该按照Values字段的顺序重新排序。所以最终结果看起来像

ID | Names | Values
1  | a,c,b | 3,2,1
2  | c,b,a | 9,7,7
3  | b,a,c | 3,2,1

这是一个小例子:实际上,我可以有数百个Names及其对应的Order字段。

如何按降序排列用逗号分隔的值,然后按该顺序更新“值”字段?

0 个答案:

没有答案