gpt4 book ai didi

postgresql - Postgres "reverse count(*)"(不稳定?)

转载 作者:行者123 更新时间:2023-11-29 12:00:40 25 4
gpt4 key购买 nike

我正在尝试在 PostgreSQL (8.4 +) 中执行我称之为“反向计数 (*)”的操作。我希望我的输出具有与每个字母的总列中指定的行数完全相同的行数...

表 1:

letter | total
-------------
a | 3
b | 2
c | 4
d | 1

预期的表输出:

letter
-----
a
a
a
b
b
c
c
c
c
d

我不确定我是否以及如何在这里使用 unnest 函数....

最佳答案

是的 - unnest 是你想要的(当然,一旦你有一个数组)

richardh=> SELECT array_fill(letter, ARRAY[total]) FROM expand;
array_fill
------------
{a,a,a}
{b,b}
{c,c,c,c}
{d}
(4 rows)

richardh=> SELECT unnest(array_fill(letter, ARRAY[total])) FROM expand;
unnest
--------
a
a
a
b
b
c
c
c
c
d
(10 rows)

关于postgresql - Postgres "reverse count(*)"(不稳定?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14507198/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com