• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PostgreSQL、レコード内にある結果(カウントの結果)を入れたい)

PostgreSQLにおけるレコードの結果を入れたい方法

このQ&Aのポイント
  • PostgreSQLにおけるレコードの結果のカウント数を含めた表示方法について質問があります。
  • 指定のテーブルにおいて、「状態」が「準備中」のレコードをカウントし、新たなカラムとして表示したいです。
  • ご存知の方がいらっしゃいましたら、ご教示いただけないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

要件に矛盾があります。 > 1 |a |作業中 |1 「No=1」かつ「名称='a'」の行は2行あり、それぞれ「状態」は「作業中」と「準備中」があるので、どの「状態」とすればいいのか決められません。 「作業中」もカウントするというなら、例えば次のようなSQLで実現可能です。 -- sum関数 select "No." ,"名称" ,sum(case when "状態"='作業中' then 1 else 0 end) as "作業中数" ,sum(case when "状態"='準備中' then 1 else 0 end) as "準備数" from "tblA" group by "No.","名称" order by "No." ; -- count関数 select "No." ,"名称" ,count(case when "状態"='作業中' then 1 else null end) as "作業中数" ,count(case when "状態"='準備中' then 1 else null end) as "準備数" from "tblA" group by "No.","名称" order by "No." ;

sounds24
質問者

お礼

ご回答頂きありがとうございました。 無事、理想の結果を出力することができました。 COUNTの中に条件なんて全然思いつきませんでした。 GROUP BY もあまり使っていなかったため、これから知識を深めようと思います。 この度は本当にありがとうございました。

関連するQ&A