mysql 行から列へ、列から行へ 難しい文章ではないので、詳しく説明はしません。文章を読むときは、一文ずつ内側から外側へと分析してください。 行から列へ 図に示すようなテーブルがあります。ここで、クエリ結果の行を列に変換します。 テーブル作成ステートメントは次のとおりです。 テーブル `TEST_TB_GRADE` を作成します ( `ID` int(10) NOT NULL AUTO_INCREMENT, `USER_NAME` varchar(20) デフォルト NULL, `COURSE` varchar(20) デフォルト NULL, `SCORE` float デフォルト '0'、 主キー (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=1 デフォルト CHARSET=utf8; TEST_TB_GRADE(USER_NAME, COURSE, SCORE)の値に挿入 (「張三」『数学』34) (「張三」、「中国人」、58)、 (「張三」、「英語」、58)、 (『李斯』『数学』45) (「李斯」、「中国人」、87)、 (「李斯」、「英語」、45)、 (「王武」『数学』76) (「王武」、「中国人」、34)、 (「王武」、「英語」、89) クエリステートメント: ここでMAXが使用される理由は、NULLを防ぐためにデータのないポイントを0に設定するためです。 ユーザー名を選択、 MAX(CASE コース WHEN '数学' THEN スコア ELSE 0 END ) 数学、 MAX(CASE コース WHEN '中国語' THEN スコア ELSE 0 END) 中国語、 MAX(CASE コース WHEN '英語' THEN スコア ELSE 0 END ) 英語 FROM test_tb_grade USER_NAME でグループ化します。 結果: 列から行へ 図のようなテーブルがあります。クエリ結果が行にリストされることを期待します。 テーブル作成ステートメントは次のとおりです。 テーブル `TEST_TB_GRADE2` を作成します ( `ID` int(10) NOT NULL AUTO_INCREMENT, `USER_NAME` varchar(20) デフォルト NULL, `CN_SCORE` float デフォルト NULL、 `MATH_SCORE` float デフォルト NULL、 `EN_SCORE` float デフォルト '0'、 主キー (`ID`) ) ENGINE=InnoDB AUTO_INCREMENT=1 デフォルト CHARSET=utf8; TEST_TB_GRADE2(USER_NAME, CN_SCORE, MATH_SCORE, EN_SCORE) の値を挿入する (「張三」、34、58、58)、 (「李斯」、45、87、45)、 (「王武」76、34、89); クエリステートメント: test_tb_grade2 から user_name、'Language' COURSE、CN_SCORE を SCORE として選択します。 unit select user_name, '数学' COURSE, MATH_SCORE as SCORE from test_tb_grade2 結合により、test_tb_grade2 から user_name、'English' COURSE、EN_SCORE を SCORE として選択します。 ユーザー名、コースで並べ替えます。 結果: 読んでいただきありがとうございます。お役に立てれば幸いです。このサイトをサポートしていただきありがとうございます。 以下もご興味があるかもしれません:
|
>>: Linux 占有ポートの強制解放と Linux ファイアウォールのポート開放方法の詳しい説明
エラーの説明: 1. Linux (CentOS 7 64) システムに Nginx (1.18.0...
プロジェクトシナリオ: Vueプロジェクトを実行したらインデントエラーが出ました。ideaコンパイラ...
目次概要コンポーネントクラスの型定義を作成するジェネリック型を使用してPropsとStateを定義す...
SSH 公開鍵認証は、SSH 認証方式の 1 つです。 SSH パスワードフリーのログインは公開鍵認...
目次序文yumソース、epelソースを設定するCephソースの設定Cephとそのコンポーネントをイン...
この方法は、CSS3のdrop-shadow filterを使用して、png画像の不透明部分に任意の...
序文Linux のファイル権限管理はとにかく素晴らしいです。SUID、SGID、SBIT の機能を確...
123WORDPRESS.COM HTML チュートリアル セクションに戻るには、ここをクリックして...
多くの場合、フォームを美しくするために、送信ボタンが画像に置き換えられます。ただし、細部に注意を払わ...
目次1. はじめに2. 選択2.1 単一列のクエリ2.2 複数の列のクエリ2.3 すべての列をクエリ...
CentOS7 のデフォルトのファイアウォールは iptables ではなく、firewalle で...
先日、rsync を使用して LAN 上の別のシステムに大きなファイルを転送していました。非常に大き...
実装準備 # ファイルパスをバックアップする必要があります: /opt/apollo/logs/ac...
目次1. テレポートについて知る2. テレポートの基本的な使い方3. 最初のステップの最適化4. 第...
1. 概要ユーザーは、アクセスする Web アプリケーションがインタラクティブでスムーズに実行される...