駆け出しプログラマーの軌跡

日々の記憶(記録)を綴る

SQL文(CONCAT関数)

データの結合

例えばあなたがユーザーのフルネームの一覧を取得したいとしましょう。

フルネームは"family_name""first_name"から成るので、以下のように

SQLを書くことができます。

 

MySQL

1
2
SELECT family_name, first_name
FROM users

すると、実行結果は以下のように表示されます。

 

名前の一覧は取得できましたが、私たちが取得したいのはフルネーム

なのでカラムが分かれているのは気になります。

そこで、"family_name""first_name"を併せて1つのカラムに表示させてみましょう。

そんな時に使うのがCONCAT関数です。

 

CONCAT関数

CONCAT関数は複数の文字列を連結させることができる関数です。

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

▲連結させる文字列の中にNULLがあった場合、結果は必ずNULLとなって

しまいます。

 

実際にこれをSELECT句の中で使って、"family_name""first_name"を連結

させ、表示させてみましょう。

 

SequelProで以下のSQL文を実行してください

1
2
SELECT CONCAT(family_name, first_name)
FROM users

以下のように結果が表示されていれば正常にSQL文が実行できています。

 

https://tech-master.s3.amazonaws.com/uploads/curriculums//1ea9d3faf4502c45773711bc115d4545.png

このようにいくつかのデータを用いて1つのデータを作りたいときは

CONCAT関数を使用すると、結果が扱いやすいものとなります。