ホームページ >データベース >mysql チュートリアル >Crosstab() 関数を使用して PostgreSQL でクロス集計クエリを作成する方法

Crosstab() 関数を使用して PostgreSQL でクロス集計クエリを作成する方法

Susan Sarandon
Susan Sarandonオリジナル
2025-01-25 11:06:10774ブラウズ

How to Create Crosstab Queries in PostgreSQL Using the crosstab() Function?

postgreSQLのcrosstab()関数は、テーブルデータをより読みやすく、クロスコンテストされた形式に変換することにより、データ分析を簡素化します。この強力な手法により、複雑なデータセットを簡単に解釈できます。 開始する前に、

拡張子がインストールされていることを確認してください。 この拡張機能は、必要なcrosstab()関数を提供します。このコマンドを使用してインストールしてください:

tablefunccrosstab()関数の構文は簡単です:

<code class="language-sql">CREATE EXTENSION IF NOT EXISTS tablefunc;</code>

crosstab()

:データをクロステル化するデータを提供する
<code class="language-sql">crosstab(query, category_query)</code>
ステートメント。
  • query:crosstabの列のカテゴリを定義するSELECTステートメント。
  • 例で説明しましょう。 クロステブラートしたいデータを含むcategory_queryという名前のテーブルがあると仮定します:SELECT
このクエリは、各「セクション」の「アクティブ」および「非アクティブ」ステータスのカウントを示すCrosStabを生成します。 出力は次のとおりです

tbl

関数は、あらゆるテーブルからのデータを分析する柔軟な方法を提供し、PostgreSQL内のデータの読みやすさと分析機能を大幅に向上させます。 特定のデータと一致するように、
<code class="language-sql">SELECT *
FROM crosstab(
    'SELECT section, status, COUNT(*) AS ct FROM tbl GROUP BY section, status',
    'SELECT DISTINCT status FROM tbl'
) AS ct ("Section" text, "Active" int, "Inactive" int);</code>
句の列名とデータ型を調整することを忘れないでください。

以上がCrosstab() 関数を使用して PostgreSQL でクロス集計クエリを作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。