MySQL の concat 関数についての簡単な説明。MySQL でフィールドの前または後に文字列を追加する方法

MySQL の concat 関数についての簡単な説明。MySQL でフィールドの前または後に文字列を追加する方法

MySQL で concat 関数を使用する方法:

CONCAT(文字列1、文字列2、…)

戻り値は、パラメータの連結から得られる文字列です。いずれかのパラメータが NULL の場合、戻り値は NULL になります。

知らせ:

すべての引数が非バイナリ文字列の場合、結果は非バイナリ文字列になります。

引数にバイナリ文字列が含まれている場合、結果はバイナリ文字列になります。

数値引数は、それに相当するバイナリ文字列に変換されます。これを回避するには、明示的なキャストを使用します。次に例を示します。

SELECT CONCAT(CAST(int_col AS CHAR), char_col)

MySQLのconcat関数は、1つ以上の文字列を連結することができます。

mysql> concat('10')を選択します。
+--------------+
| 連結('10') |
+--------------+
| 10 |
+--------------+
セット内の 1 行 (0.00 秒)

mysql> select concat('11','22','33');
+------------------------+
| 連結('11','22','33') |
+------------------------+
|112233|
+------------------------+
セット内の 1 行 (0.00 秒)

MySQLのconcat関数が文字列を連結するとき、そのうちの1つがNULLであればNULLを返します。

mysql> select concat('11','22',null);
+------------------------+
| 連結('11','22',null) |
+------------------------+
| NULL |
+------------------------+
セット内の 1 行 (0.00 秒)

MySQL の concat_ws 関数

方向:

CONCAT_WS(セパレータ、文字列1、文字列2、...)

CONCAT_WS() は CONCAT With Separator の略で、CONCAT() の特殊な形式です。最初のパラメータは他のパラメータの区切り文字です。区切り文字は、連結される 2 つの文字列の間に配置されます。区切り文字には文字列または他のパラメータを使用できます。

知らせ:

区切り文字が NULL の場合、結果は NULL になります。この関数は、セパレータ パラメータに続く NULL 値を無視します。

接続がカンマで区切られている場合

mysql> concat_ws(',','11','22','33') を選択します。

+---------------------------------+
| 連結ws(',','11','22','33') |
+---------------------------------+
| 11,22,33 |
+---------------------------------+
セット内の 1 行 (0.00 秒)

MySQL の concat 関数とは異なり、concat_ws 関数は実行時に NULL 値が原因で NULL を返すことはありません。

mysql> concat_ws(',','11','22',NULL) を選択します。
+---------------------------------+
| 連結ws(',','11','22',NULL) |
+---------------------------------+
| 11,22 |
+---------------------------------+
セット内の 1 行 (0.00 秒)

MySQL group_concat 関数

完全な構文は次のとおりです。

group_concat([DISTINCT] 接続するフィールド [ASC/DESCソートフィールドによる順序] [区切り文字 'separator'])

基本的なクエリ

mysql> aa から * を選択します。
+------+------+
| ID| 名前|
+------+------+
|1 | 10|
|1 | 20|
|1 | 20|
|2 | 20|
|3 | 200 |
|3 | 500 |
+------+------+
セット内の 6 行 (0.00 秒)

ID でグループ化し、名前フィールドの値をコンマで区切って 1 行に出力します (デフォルト)

mysql> aa group by id から id、group_concat(name) を選択します。
+------+--------------------+
| id| group_concat(名前) |
+------+--------------------+
|1 | 10,20,20|
|2 | 20 |
|3 | 200,500|
+------+--------------------+
セット内の 3 行 (0.00 秒)

ID でグループ化し、名前フィールドの値をセミコロンで区切って 1 行に出力します。

mysql> aa group by id から id、group_concat(名前区切り文字 ';') を選択します。
+------+----------------------------------+
| id| group_concat(名前区切り文字 ';') |
+------+----------------------------------+
|1 | 10;20;20 |
|2 | 20|
|3 | 200;500 |
+------+----------------------------------+
セット内の 3 行 (0.00 秒)

ID でグループ化し、名前フィールドの値を冗長なく 1 行に出力します。

カンマ区切り

mysql> aa group by id から id、group_concat(一意の名前) を選択します。
+------+------------------------------------------+
| id| group_concat(一意の名前) |
+------+------------------------------------------+
|1 | 10,20|
|2 | 20 |
|3 | 200,500 |
+------+------------------------------------------+
セット内の 3 行 (0.00 秒)

ID でグループ化し、名前フィールドの値を、名前の降順で、コンマで区切って 1 行に出力します。

mysql> aa group by id から id、group_concat(name order by name desc) を選択します。
+------+---------------------------------------+
| id| group_concat(名前の順序を名前の降順で) |
+------+---------------------------------------+
|1 | 20,20,10 |
|2 | 20|
|3 | 500,200|
+------+---------------------------------------+
セット内の 3 行 (0.00 秒)

repeat() 関数

文字列をコピーするために使用されます。次の例では、「ab」はコピーする文字列を表し、2 はコピー数を表します。

mysql> repeat('ab',2) を選択します。

+----------------+
| 繰り返し('ab',2) |
+----------------+
| アバブ |
+----------------+

セット内の 1 行 (0.00 秒)

もう一つの例
mysql> repeat('a',2) を選択します。

+---------------+
| 繰り返し('a',2) |
+---------------+
| あぁ |
+---------------+
セット内の 1 行 (0.00 秒)

mysql はテーブル内のフィールドに文字列を追加します。

table_name を更新し、field=CONCAT(field,'',str) を設定します。

mysqlはテーブル内のフィールドの前に文字列を追加します

table_name を更新し、field=CONCAT('str',field) を設定します。

この機能はあなたにとって非常に役立つかもしれません! !

上記の記事では、MySQL の concat 関数と、MySQL でフィールドの前後に文字列を追加する方法について簡単に説明しました。これが私が皆さんと共有したい内容のすべてです。皆さんの参考になれば幸いです。また、123WORDPRESS.COM をサポートしていただければ幸いです。

以下もご興味があるかもしれません:
  • SQL Server 2012 の新しい関数文字列関数 FORMAT の詳細な説明
  • SQL Server 2012 の文字列関数 CONCAT の詳細な説明
  • MySQL の concat 関数 (接続文字列) の使用方法の詳細な説明
  • MySQL インターセプションと文字列分割関数の使用例
  • MySQL 文字列関数の詳細な説明 (推奨)
  • MySQLはランダムな文字列関数共有を生成する
  • Mysql 文字列処理関数の詳細な紹介と概要
  • mysql 文字列の長さを取得する関数 (CHAR_LENGTH)
  • SQL でよく使用される文字列処理関数の完全なリスト

<<:  Vue プロジェクトにインターフェース リスニング マスクを追加する方法

>>:  Nginx キャッシュ ファイルと動的ファイルの自動バランス設定スクリプト

推薦する

Docker を使って LEMP 環境を素早く構築する方法の例

LEMP(Linux + Nginx + MySQL + PHP)は、基本的に今日のWeb開発者にと...

MySQL レプリケーション問題の 3 つのパラメータの分析

目次01 sql_slave_skip_counter パラメータ02 スレーブスキップエラーパラメ...

Nginx 環境での WordPress マルチサイト構成の詳細な説明

WordPress のマルチサイト機能を使用すると、1 つの WordPress プログラムをインス...

CentOS7.x のアンインストールとインストール MySQL5.7 の操作手順とエンコード形式の変更方法

1. MySQL 5.7 のアンインストール1.1查看yum是否安裝過mysql CD yum li...

Dockerでランナーコンテナを構成する方法

1. ランナーコンテナを作成する mk@mk-pc:~/Desktop$ docker run -d...

Nginx キャッシュ設定例

Web アプリケーションの開発とデバッグを行う際には、テストのためにブラウザのキャッシュをクリアした...

Vue Element フロントエンドアプリケーション開発: Vuex での API ストアビューの使用

目次概要1. フロントエンドとバックエンドの分離とWeb APIの優先ルート設計2. Axiosネッ...

MySQLデータベースイベントスケジュール実行タスクの詳細な説明

1. 背景プロジェクトの業務が進むにつれて、データベース テーブルの数がどんどん大きくなり、ハードデ...

知っておくべき 25 の Vue のヒント

目次1. プロパティを型リストに制限する2. デフォルトのコンテンツと拡張ポイント3. ネストされた...

JavaScript でフロントエンドのカウントダウン効果を実装する

この記事では、フロントエンドのカウントダウン効果を実現するためのJavaScriptの具体的なコード...

Windows プラットフォームでの MySQL のインストールと設定方法と注意事項

2.1、msiインストールパッケージ2.1.1、インストール特に重要なのは、インストール前に、元の ...

MySQLの基本操作を詳しく解説(第2部)

序文この記事には1. データベースのいくつかの主要な制約2. テーブル間の関係制約:主キー制約: 機...

Windows Server 2016 リモート デスクトップ サービスを展開するためのクイック スタート ガイド

現在、2016サーバーは、win2008や2012よりも優れたマルチサイトhttpsサービスをサポー...

MySQLサーバーが消えたエラーの解決策

PHP で MySQL サーバーが消えた問題1. 背景以前、Codeigniter でコンソール コ...

Webpack プロジェクトでローダー プラグインをデバッグする方法

最近、webpackの使い方を学んでいたときに、webpack-replace-loaderの設定正...