簡體   English   中英

如何在 postgresql 中合並多個 select 語句?

[英]How to combine multiple select statements in postgresql?

我剛開始學習如何編碼。 我想知道如何在一個查詢中組合多個 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按該列聚合。

您可以使用GROUP BY

SELECT count(*), status FROM message_items GROUP BY status;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM