トップDML文字列関数 ≫ 文字列を連結する

文字列を連結する

「文字列の連結」とは,ある文字列の端に別の文字列を追加することを意味します.文字列を連結するSQLは使用するDBMSによって異なります.以下に各DBMSごとに使用可能なSQLを示します.

DBMSSQL
Access文字列1 + 文字列2
SQLServer文字列1 + 文字列2
OracleCONCAT(文字列1, 文字列2)
文字列1 || 文字列2
MySQLCONCAT(文字列1, 文字列2, 文字列3)
PostgreSQL文字列1 || 文字列2

Access,SQLServerの場合

AccessとSQLServerは +演算子を使用して文字列を連結します.

SELECT '文字列1' + '文字列2' + ...

Oracleの場合

OracleはCONCAT関数を使用するか ||演算子を使用して文字列を連結します.

SELECT CONCAT('文字列1', '文字列2')
SELECT '文字列1' || '文字列2' || ...

MySQLの場合

MySQLはCONCAT関数を使用して文字列を連結します.なお,||演算子はMySQLでは論理和(OR)として解釈されるため,文字列連結の用途には使用できません.

SELECT CONCAT('文字列1', '文字列2', ...)

PostgreSQLの場合

PostgreSQLは ||演算子を使用して文字列を連結します.

SELECT '文字列1' || '文字列2' || ...

SQL サンプル

例としてOracleで以下のテーブル(従業員マスタ)から従業員名(苗字)と従業員名(名前)を連結します.

従業員マスタ

従業員コード従業員名(苗字)従業員名(名前)
A0001ブラウンチャーリー
A0002パティペパーミント
A0003ヴァン・ぺルトルシール
A0004ヴァン・ぺルトライナス

SQL

SELECT 従業員名(名前) || '・' || 従業員名(苗字)
FROM 従業員マスタ

結果

従業員名(名前) || '・' || 従業員名(苗字)
チャーリー・ブラウン
ペパーミント・パティ
ルシール・ヴァン・ぺルト
ライナス・ヴァン・ぺルト