MySQLを水平から垂直に、垂直から水平に変換する方法

MySQLを水平から垂直に、垂直から水平に変換する方法

データの初期化

`test_01` が存在する場合はテーブルを削除します。
テーブル「test_01」を作成します(
 `id` int(0) NULLではない、
 `user` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント 'User',
 `km` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント '件名',
 `fs` varchar(255) 文字セット utf8mb4 照合 utf8mb4_0900_ai_ci NULL デフォルト NULL コメント 'スコア',
 `time` datetime(0) NULL デフォルト NULL コメント 'time',
 BTREE を使用した主キー (`id`)
) エンジン = InnoDB 文字セット = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;

`test_01` に VALUES (1, '小三', '语文', '98', '2020-08-06 15:51:21') を挿入します。
`test_01` に VALUES (2, '小三', '数学', '90', '2020-07-01 15:51:25') を挿入します。
`test_01` に VALUES (3, '小三', '英语', '77', '2020-06-01 15:51:28') を挿入します。
INSERT INTO `test_01` VALUES (4, '小等', '英语', '78', '2020-06-01 15:51:28');

1. 水平から垂直への配置

選択 
	ユーザー、
	SUM( CASE WHEN km = "中国語" THEN fs ELSE 0 END ) "中国語",
	SUM( CASE WHEN km = "数学" THEN fs ELSE 0 END ) "数学",
	SUM( CASE WHEN km = "英語" THEN fs ELSE 0 END ) "英語" 
から
	テスト_01 
ユーザー別にグループ化

ここに画像の説明を挿入

2. 縦から横への配置

test_01 から km を選択 WHERE id = 1 
連合 
test_01 から fs を選択 WHERE id = 1 

ここに画像の説明を挿入

これで、MySQL を水平から垂直、垂直から水平に変換する方法についての記事は終了です。MySQL を水平から垂直、垂直から水平に変換する方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • MySQL水平および垂直テーブル変換操作の実装方法

<<:  Docker 環境での Jmeter の分散操作に関する詳細なチュートリアル

>>:  fastdfs+nginxクラスタ構築の実装

推薦する

Vue でバイナリ ファイル ストリームを受信して​​ PDF プレビューを実現する方法

バックグラウンド コントローラー @RequestMapping("/getPDFStre...

JavaScript での AOP プログラミングの基本実装

AOP の紹介AOP (アスペクト指向プログラミング) の主な機能は、コアビジネスロジックモジュール...

Nginx を使用してフロントエンドのクロスドメイン問題を解決する方法

序文Vue アプリケーションなどの静的ページを開発する場合、クロスドメインになる可能性のあるインター...

HTML&CSS&JS 互換性ツリー (IE、Firefox、Chrome)

Web デザインにおけるツリーとは何ですか?簡単に言うと、リンクをクリックするとサブディレクトリが展...

iframe を使用して Web ページに他の Web ページを埋め込む方法

iframe の使い方:コードをコピーコードは次のとおりです。 <DIV align=cent...

MySQL の自動増分主キーに関する詳細な説明

目次特徴保存戦略自己増加の決定自動増分値の変更実行プロセス問題点自動増分ロックロック戦略バッチ挿入の...

MySQLトリガーの使用

目次1. トリガーの紹介1. トリガーとは何ですか? 2. トリガーの特徴2. トリガーを作成する1...

NodeとPythonの双方向通信実装コード

目次プロセスコミュニケーションプロセス間の双方向通信問題要約するサードパーティのデータ サプライヤー...

MySQL パフォーマンス最適化インデックス プッシュダウン

インデックス条件プッシュダウン (ICP) は MySQL 5.6 で導入され、クエリを最適化するた...

CSS 評価効果の星の例

何?何のスターコートですか?さて、もっとわかりやすくするために写真を見てみましょう。 よく見ると、パ...

JS のあらゆる場所で絶対等価演算子の使用をやめる

目次概要1. NULL値のテスト2. ユーザー入力を読み取る導入事実の根源はどこにあるのでしょうか?...

シェルスクリプトを使用したMySQLデータベースの自動バックアップ

シェルスクリプトを使用したMySQLデータベースの自動バックアップデータベースを頻繁にバックアップす...

Baota LinuxパネルにFTP接続できない問題の解決方法の詳細な説明

Alibaba Cloud Server を使用している場合は、セキュリティ グループ設定でポート ...

Linux でスペースを含むファイルを削除する (ディレクトリではない)

日常業務では、スペースのないファイルに遭遇することがよくあります。これにより、削除操作がはるかに簡単...