gpt4 book ai didi

postgresql - 同一张表中 COUNT 的 SUM

转载 作者:行者123 更新时间:2023-11-29 13:30:49 25 4
gpt4 key购买 nike

我正在做很多我想在表格中显示的计数。我想在同一张表中显示所有计数的总和。

这是我得到的(简化 - 我有 6 个计数):

SELECT * FROM (SELECT COUNT() AS NB_book
        item as a1, metadatavalue as m1, metadatavalue as m12,
        WHERE m1.field_id = 64 (because I need that field to exist)
        AND m2.field_id = 66
        And m2. = book
        AND a1.in_archive = TRUE )
        (SELECT COUNT(
) AS NB_toys
        metadatavalue as m1, metadatavalue as m12,
         WHERE m1.field_id = 64 (because I need that field to exist)
        AND m2.field_id = 66
        And m2. = toys
         AND a1.in_archive = TRUE)
)

现在,我希望显示是这样的

------------表格------------
|NB_book | NB_玩具 |总对象 |
------------------------------
| 12 | 10 | 22 |

最佳答案

你想要的是:

SELECT
sum(CASE WHEN condition_1 THEN 1 END) AS firstcount,
sum(CASE WHEN condition_2 THEN 1 END) AS secondcount,
sum(thecolumn) AS total
FROM ...

您的示例查询过于模糊,无法构建可用的内容,但这会给您思路。上面的条件可以是任何 bool 表达式。

如果您愿意,可以使用 NULLIF 而不是 CASE WHEN ... THEN ... END。我更喜欢坚持标准的 CASE

关于postgresql - 同一张表中 COUNT 的 SUM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24041580/

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