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 キャッシュ ファイルと動的ファイルの自動バランス設定スクリプト

推薦する

CSS3 の Flex レイアウトの詳細な分析

Flexbox レイアウト モジュールは、コンテナー内のスペースをより効率的に配分する方法を提供する...

CentOS 8 に MySql をインストールしてリモート接続を許可する方法

ダウンロードしてインストールします。まず、システムに MySQL または MariaDB があるかど...

MySQL 更新セットとの違い

目次問題の説明原因分析解決問題の説明最近、奇妙な問い合わせを受けました。更新ステートメントはエラーな...

vue router-view のネストされた表示実装

目次1. ルーティング構成2. Vueページのネスト3. ネストされた関係1. ルーティング構成 定...

WeChatアプレットが計算機機能を実装

この記事では、WeChatアプレットの計算機機能を実装するための具体的なコードを参考までに紹介します...

Mysql マスタースレーブ サービスの実装例を構成する

Mysql マスタースレーブ サービスの実装例を構成する### メインデータベースmy.cnfを構成...

nginx設定ファイルの解釈の詳細な説明

nginx 設定ファイルは主に 4 つの部分に分かれています。 main{#(グローバル設定) ht...

Dockerを使用して開発環境を構築する方法を素早く習得します

プラットフォームが成長し続けるにつれて、プロジェクトの研究開発は、開発者向けのさまざまな外部環境、特...

MySQLでMyISAMストレージエンジンをInnodbに変更した操作記録のまとめ

一般的に、MySQL はデフォルトでさまざまなストレージ エンジンを提供しており、次のように表示され...

MySQL 5.7.17 のインストールと設定方法のグラフィック チュートリアル (Windows10)

MySQL 5.7.17 のインストールと設定方法の概要最初のステップは、MySQL公式サイトから...

CentOS7にJDK8をrpmモードでインストールする

CentOS 7が正常にインストールされると、OpenJDKのJREがデフォルトでインストールされて...

Python で pymysql モジュールを使用して MySQL データベースに接続する

pymysqlをインストールするpip install pymysql 2|0pymysqlの使用2...

Docker 経由で Redis 6.x クラスターをデプロイする方法

システム環境: Redis バージョン: 6.0.8 Docker バージョン: 19.03.12シ...

HTML_PowerNode 入門 Java アカデミー

HTMLとは何ですか? HTML は Web ページを記述するために使用される言語です。 HTML ...