ホームページ > データベース > mysql チュートリアル > MySQL でトールデータをワイドデータに再形成する方法?

MySQL でトールデータをワイドデータに再形成する方法?

Linda Hamilton
リリース: 2024-12-20 19:38:13
オリジナル
209 人が閲覧しました

How to Reshape Tall Data to Wide Data in MySQL?

MySQL でのデータの再形成: 縦長から横長へ

データベース内のデータを操作する場合、多くの場合、データを元のデータから再形成する必要があります。縦長のフォーマットから幅広のフォーマットまで。この変換により、よりコンパクトで有意義な方法でデータを分析および視覚化することが容易になります。

例:

長い形式のデータを含むテーブルについて考えてみましょう:

| country | key | value |
|---|---|---|
| USA | President | Obama |
| USA | Currency | Dollar |
| China | President | Hu |
| China | Currency | Yuan |
ログイン後にコピー

この形式では、各行は国の 1 つの属性を表します。このデータをワイド形式に変換するには、一意のキーごとに列を含む新しいテーブルを作成し、各国の対応する値を入力します。

| country | President | Currency |
|---|---|---|
| USA | Obama | Dollar |
| China | Hu | Yuan |
ログイン後にコピー

SQL 変換:

MySQL は、クロス集計やピボット テーブルを使用してデータを再構成する機能を提供します。目的のワイドフォーマットテーブルを生成するクエリの例を次に示します。

SELECT country, 
       MAX( IF( key='President', value, NULL ) ) AS President,
       MAX( IF( key='Currency', value, NULL ) ) AS Currency
FROM table
GROUP BY country;
ログイン後にコピー

このクエリは、MAX() 集計関数を使用して、それぞれの最大値 (つまり、各一意のキーに関連付けられた値) を見つけます。 country.

手順:

  1. テーブルの作成: 上記の SELECT クエリを実行して、目的のワイド形式で新しいテーブルを作成します.
  2. 値を入力します: クエリは自動的に実行されます。集計に基づいて値を設定します。

結論:

MySQL でクロス集計またはピボット テーブルを使用すると、長いデータから簡単にデータを再形成することができます。 、トールフォーマットからワイドフォーマットまで。これはデータ分析と視覚化にとって貴重な手法であり、提供されたコードを使用して MySQL に簡単に実装できます。

以上がMySQL でトールデータをワイドデータに再形成する方法?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート