【发布时间】:2021-01-05 05:02:33
【问题描述】:
在处理以下问题时,Postgres 处理更复杂的结构有点棘手。我想建立一个二维数组的结构,但不知道如何让Postgres C支持我这样做?有人有什么想法吗?
Table
id contents(text) num(double)
1 I love you. {1,3,4,5,6,7,8,10}
2 why do it? {3,4,2,11,12,33,44,15}
3 stopping. {22,33,11,15,14,22,11,55}
4 try it again. {15,12,11,22,55,21,31,11}
对数组中每个位置的行进行排序,得到如下结构。下面第一行的结果是num字段列数组的第一个位置,以此类推。count 4是指返回排序后的前n个。
select my_func(contents, num, 4) from table;
预期结果:
result
{('stopping.', 22), ('try it again.', 15), ('why do it?', 3), ('I love you.', 1)}
{('stopping.', 33), ('try it again.', 12), ('why do it?', 4), ('I love you.', 3)}
{('stopping.', 11), ('try it again.', 11), ('I love you.', 4), ('why do it?', 2)}
......
......
提前致谢。
【问题讨论】:
标签: c++ c postgresql plpgsql postgresql-11