ホームページ  >  記事  >  データベース  >  Oracle の列から行への機能とは何ですか?

Oracle の列から行への機能とは何ですか?

WBOY
WBOYオリジナル
2022-01-26 10:53:5515901ブラウズ

Oracle では、列から行への関数は「unpivot()」関数で、テーブル データを列から行に変換するために使用されます。構文は「unpivot(カスタム列名列値列名 (列名) の列名)」。

Oracle の列から行への機能とは何ですか?

このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。

Oracle の列から行への関数とは何ですか?

Oracle の列から行への関数は unpivot() 関数です

例は次のとおりです。

元のテーブル

Oracle の列から行への機能とは何ですか?##

with temp as(
select '四川省' nation ,'成都市' 第一,'绵阳市' 第二,'德阳市' 第三,'宜宾市' 第四  from dual union all
select '湖北省' nation ,'武汉市' 第一,'宜昌市' 第二,'襄阳市' 第三,'' 第四   from dual
)
select nation,name,title from
temp
unpivot
(name for title in (第一,第二,第三,第四))t

Oracle の列から行への機能とは何ですか?

説明: unpivot(カスタム列名/*列値*/ カスタム列名の場合) /*列名*/ in (列名))

例は次のとおりです。

元のデータは次のとおりです。

Oracle の列から行への機能とは何ですか?

そして、取得したい結果は次のとおりです。

Oracle の列から行への機能とは何ですか?##SQL:

select class_name, student_name, course_type, result, created_date
  from class_tmp 
  unpivot(result for course_type in(chinese_result,math_result));

元のデータの chinese_result 列と math_result 列の列名は、コース タイプを示す新しい列 course_type のフィールド値に変換されます。

元のデータの chinese_result 列と math_result 列のフィールド値は、スコアを表す新しい列結果のフィールド値に変換されます。

推奨チュートリアル: 「

Oracle ビデオ チュートリアル

以上がOracle の列から行への機能とは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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