• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:PostgreSQLで一致した順にソート)

PostgreSQLで一致した順にソート

このQ&Aのポイント
  • PostgreSQLで、複数の条件に一致したデータをソートする方法について教えてください。
  • 具体的には、memberテーブルの年齢と学歴、都道府県がpointテーブルの条件と一致した場合にソートしたいです。
  • また、pointテーブルの都道府県コードは正規表現を使用して複数のコードを格納しています。正規表現の使い方も教えてください。

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

  • ベストアンサー
  • world99
  • ベストアンサー率64% (20/31)
回答No.1

はじめまして。 pointテーブルのデータに該当する状態のmemberテーブルのデータに対してポイントを数えると考えてよろしいでしょうか? memberテーブルにデータを一意に特定する列がないので、member_idという列を定義して考えてみました。 (1)~(3)の条件と、ソート条件を満たしたSQL文は、次のようになると思いますが、如何でしょうか。 select m.member_id, count(m.member_id) from member m inner join point p on extract(year from age(now(), birthday)) >= p.min_age_cd and extract(year from age(now(), birthday)) <= p.max_age_cd and m.graduate_cd=p.graduate_cd and p.prefecture_cd like '%' || m.prefecture_cd || '%' group by m.member_id order by count(m.member_id) desc, m.member_id

wonder_dct
質問者

お礼

お返事が遅くなり、申し訳ございません。 world99さんご回答ありがとうございます。 ご提示いただいたクエリを参考に解決することができました。 ありがとうございました。

関連するQ&A