- Products -


Software


NEWS


Special



- Knowledge -


Category × Tag



- Like -

公開
作成日:2022/2/21
更新日:2022/3/4

SQLで再帰処理を行う

・再帰クエリを使うことで、SQLだけで階層構造をたどって集計をしたり、文字列を生成することができる。
・例えば、組織図の階層構造を解決して、特定の部に紐づく課の売上を集計するといったことができる。

実装例



WITH regional_sales AS (

        SELECT region, SUM(amount) AS total_sales

        FROM orders

        GROUP BY region

     ), top_regions AS (

        SELECT region

        FROM regional_sales

        WHERE total_sales > (SELECT SUM(total_sales)/10 FROM regional_sales)

     )

SELECT region,

       product,

       SUM(quantity) AS product_units,

       SUM(amount) AS product_sales

FROM orders

WHERE region IN (SELECT region FROM top_regions)

GROUP BY region, product;


参考


https://www.sraoss.co.jp/tech-blog/pgsql/pg12-cte/

https://www.postgresql.jp/document/9.5/html/queries-with.html


Category



Tag




関連記事


{{tmp.name}}

{{article.category}} {{article.title}}