ai didi

postgresql - 如何在 postgresql 中组合多个 select 语句?

转载 作者:行者123 更新时间:2023-11-29 12:48:54 24 4
gpt4 key购买 nike

我刚开始学习如何编码。我想知道如何在一个查询中组合多个 SELECT 语句。

SELECT count(*) AS "SENT" FROM message_items WHERE status = 'SENT';

SELECT count(*) AS "NOT SENT" FROM message_items WHERE status = 'NOT SENT';

SELECT count(*) AS "INVALID NUMBER" FROM message_items WHERE status = 'INVALID NUMBER';

最佳答案

使用条件聚合:

SELECT
COUNT(*) FILTER (WHERE status = 'SENT') AS "SENT",
COUNT(*) FILTER (WHERE status = 'NOT SET') AS "NOT SENT",
COUNT(*) FILTER (WHERE status = 'INVALID NUMBER') AS "INVALID NUMBER"
FROM message_items;

如果你想生成整个表的计数,那么上面的方法是合适的。相反,如果您想为每个其他列生成计数,则只需将该列添加到上面的 select 子句中,然后使用 GROUP BY 按该列进行聚合。

关于postgresql - 如何在 postgresql 中组合多个 select 语句?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58501245/

24 4 0
文章推荐: ruby-on-rails - 尝试更新,如果更新失败则删除(RubyOnRails-PostgreSQL)
文章推荐: postgresql - 为 tomcat 提供证书 jndi 连接到 postgresql
文章推荐: postgresql - 如何从 PostgreSQL 存储过程中获取结果集?
文章推荐: postgresql - Postgres 在循环中为选定列中的所有值插入 N 行
行者123
个人简介

我是一名优秀的程序员,十分优秀!

滴滴打车优惠券免费领取
滴滴打车优惠券
全站热门文章
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com