MySQLはgroup_concat()関数に基づいて複数のデータ行を結合します

MySQLはgroup_concat()関数に基づいて複数のデータ行を結合します

非常に便利な機能

group_concat() について、マニュアルには次のように記載されています: この関数は、グループ接続から NULL 以外の値を含む文字列結果を返します。

簡単に言えば、group_concat() はどの行が同じグループに属しているかを計算し、同じグループに属する列を結合して一緒に表示します。返される列は、関数のパラメータ (つまり、フィールド名) によって決まります。グループ化には基準が必要です。つまり、group by で指定した列に従ってグループ化する必要があります。

結合されたフィールドのデフォルトの区切り文字はコンマであり、これはセパレータ パラメータを使用して指定できます。

たとえば、学生テーブルには次の 5 つのデータがあります。

要件は次のとおりです。「Xiao Ming」の2行のスコアを1行に表示でき、「Xiao Hong」の2行のスコアも1行に表示できます。

次に、

学生グループから名前別に名前、group_concat(科目、スコア)を選択します。

クエリ結果は次のとおりです。

区切り文字をカスタマイズすることもできます

SELECT name,group_concat(subject,score Separator '--') FROM student group by name;

クエリ結果は次のとおりです。

group by name; を使用しない場合はどうなりますか?

学生から名前、グループ連結(科目、スコア)を選択します。

クエリの結果は次のようになります (name 属性とは関係のない 1 行のみが表示されます)。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • グループフィールドを 1 行に書き込むための mysql group_concat メソッドの例
  • MySql Group Byは複数のフィールドのグループ化を実装します
  • 複数のフィールドをグループ化するMySQLグループ
  • MySQL でグループ化した後、フィールドの複数のデータを結合して表示する方法

<<:  Vueでデータ例を定義する方法

>>:  Web プロジェクト開発 JS 機能の手ぶれ補正とスロットリングのサンプル コード

推薦する

Ubuntu 20.04 と NVIDIA ドライバーのインストールに関するチュートリアル

Ubuntu 20.04をインストールする NVIDIAドライバーをインストールする Pytouch...

MySQL ページングクエリ最適化テクニック

ページング クエリを使用するアプリケーションでは、LIMIT と OFFSET を含むクエリが非常に...

Linuxのdateコマンドの使用

1. コマンドの紹介date コマンドは、現在の時刻または指定された時刻を指定された形式で表示するた...

webpackを使用してTypeScriptコードをパッケージ化およびコンパイルする方法を教えます

TypeScript バンドルwebpack 統合通常、実際の開発では、ビルド ツールを使用してコー...

ログインインターフェースの使いやすさとセキュリティのバランスをとる方法

ウェブデザイナーでもUIデザイナーでも、ログインページや登録ページのデザインは必ず経験しなければなら...

コンテンツ領域の周囲を回転する CSS 動的グラデーション ボーダーの効果 (サンプル コード)

レンダリング ネットで関連情報を調べたところ、現在のダイナミックグラデーションボーダーの実装方法のほ...

JS でページのスクリーンショット機能を実装する方法

「ページのスクリーンショット」は、ページポスターの生成、ポップアップ画像の共有など、フロントエンドで...

Ubuntu 18.04 Linux システムに JDK と Mysql をインストールする方法

プラットフォームの展開1. JDKをインストールするステップ1. OracleJDKをダウンロードす...

vueプロジェクトのマルチ環境設定(.env)の実装

目次マルチ環境構成とは何ですか? また、なぜそれが必要なのですか? .env ファイルはどこで設定さ...

HTMLリンクタグのrel属性

<link> タグは、現在のドキュメントと Web コレクション内の他のドキュメントとの...

C++ TpeScriptシリーズのジェネリックについて

目次1. テンプレート2. ジェネリック3. ジェネリック再帰4. デフォルトのジェネリックパラメー...

CSS3で実装されたテキストポップアップ効果

成果を達成する実装コードhtml <div>123WORDPRESS.COM</d...

MySQLインデックスを最適化する方法

1. MySQL のインデックスの使用方法インデックスは、特定の列の値を持つ行をすばやく見つけるため...

LinuxにMySQLデータベース5.6のソースコードをインストールし、ログインユーザーのパスワードを変更する

この記事では、主に Linux で MYSQL データベースをインストールする方法について説明し、M...

JS で配列をループする 4 つの方法のまとめ

この記事では、配列を走査する 4 つの方法を比較してまとめます。 for ループ: for (let...