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 ファイアウォールのポート開放方法の詳しい説明
ミラーリングも Docker のコアコンポーネントの 1 つです。ミラーリングはコンテナ操作の基盤で...
指令とは何ですか? Angular と Vue はどちらもディレクティブの概念を持っており、これは通...
目次概要パフォーマンス.nowコンソール.time時間精度を短縮注意事項分割して征服する入力値に注意...
最初にコード、次にテキストコードをコピーコードは次のとおりです。 <!DOCTYPE html...
1. dfコマンドを使用してディスク全体の使用量を表示します。 df コマンドは、ハードディスクのマ...
目次コンポーネント通信の概要コンテンツ3つの方法まとめコンポーネントコミュニケーション - 父から息...
目次1. 範囲2. 関数の戻り値3. 関数のネスト4. 終了5. クロージャの実用的応用1. 内部変...
この記事の例では、Vueスライダー検証の実装を共有しています。コードは次のとおりです。 <テン...
開発の問題点開発プロセスでは、データベース フィールドが頻繁に変更されるため、RD 環境と QA 環...
SSH ターミナル (putty、xshell など) を使用して Linux サーバーに接続し、時...
目次1. 反射とは何ですか? 2. JavaScriptで反映する2.1 Reflect.get(タ...
1. 公式サイトにアクセスします: D:\mysql-5.7.21-winx64\bin をダウンロ...
いくつかの簡単な Linux コマンドを使用すると、ストレージまたは電子メールの添付ファイルのサイズ...
1. オーバーフローOverflow はオーバーフロー(コンテナ)です。コンテンツがコンテナを越える...
現在、layuiの関係者はlayim友達検索ページの構造とスタイルを提供していません。私は個人的に非...