SQL の基本 | 関数 | Concatenate: 文字列結合

異なるフィールドのデータを結合する場合がある。各データベースには、この目的を達成するための方法がある。

  • MySQL: CONCAT()
  • Oracle: CONCAT(), ||
  • SQL Server: +

Concatenate 構文

CONCAT() は次のように使用する。

CONCAT(文字列1, 文字列2, 文字列3, ...)

文字列1、文字列2、文字列3… を結合する。Oracle の CONCAT() では 2 つのパラメータが許可される点に注意する。つまり、一度に 2 つの文字列だけを結合できる。一度に複数の文字列を結合するには || を使用する。

Concatenate の例

たとえば、次のようなテーブルがあるとする。

geography テーブル

region_name store_name
East Boston
East New York
West Los Angeles
West San Diego

例1

MySQL / Oracle:

SELECT CONCAT(region_name, store_name) FROM geography
WHERE store_name = 'Boston';

結果は次のとおりである。

'EastBoston'

例2

Oracle:

SELECT region_name || ' ' || store_name FROM geography
WHERE store_name = 'Boston';

結果は次のとおりである。

'East Boston'

例3

SQL Server:

SELECT region_name + ' ' + store_name FROM geography
WHERE store_name = 'Boston';

結果は次のとおりである。

'East Boston'