ホームページ > データベース > mysql チュートリアル > 集計関数を使用せずに T-SQL データをピボットするにはどうすればよいですか?

集計関数を使用せずに T-SQL データをピボットするにはどうすればよいですか?

Patricia Arquette
リリース: 2025-01-20 10:01:08
オリジナル
587 人が閲覧しました

How Can I Pivot T-SQL Data Without Using Aggregation Functions?

T-SQL データ ピボット: 集計のないアプローチ

データ変換にはアンピボットが必要になることが多く、通常は集計関数を使用して実現されます。ただし、集計を行わずにピボットすることも可能です。

各行が顧客 (CustomerID、DBColumnName、および対応するデータを含む) を表すテーブルを考えてみましょう。 目標は、このデータをピボットし、各顧客のデータを DBColumnName に基づいて個別の列に整理することです。

<code class="language-sql">SELECT CustomerID,
       MIN(CASE WHEN DBColumnName = 'FirstName' THEN Data END) AS FirstName,
       MIN(CASE WHEN DBColumnName = 'MiddleName' THEN Data END) AS MiddleName,
       MIN(CASE WHEN DBColumnName = 'LastName' THEN Data END) AS LastName,
       MIN(CASE WHEN DBColumnName = 'Date' THEN Data END) AS Date
FROM table
GROUP BY CustomerID;</code>
ログイン後にコピー

この T-SQL クエリは、条件付きロジック (CASE ステートメント) を使用して、DBColumnName に基づいてデータを選択します。 MIN() 関数は、各顧客の列に対して 1 つの値のみが選択されるようにします。 これにより、従来の意味での集計を使用せずにデータが効果的にピボットされ、各顧客の属性が個別の列に編成されます。 この方法により、非数値データを扱う際の集計に関連する潜在的な問題が回避されます。

以上が集計関数を使用せずに T-SQL データをピボットするにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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