MySQLのCONCATとは?概要と基礎〜応用の使い方を解説!
  • facebookページ
  • twitterページ
  • 2019.12.16

    MySQLのCONCATとは?概要と基礎〜応用の使い方を解説!

    MySQLのCONCATは文字列などを結合させる際にとても便利なコマンドです。SELECTステートメントを使用することができるのであれば、ぜひ覚えておきたい機能ですね。そこで今回の記事では、MySQLのCONCATの主な機能をご紹介しつつ、実際に使用する方法をハンズオンで体験していきましょう。

    本記事の要点
    • MySQLのCONCATは、文字列やカラムを結合させるコマンド
    • MySQLを使ったCONCATのハンズオン

    MySQL CONCATとは

    MySQLのCONCATは、指定した文字列や数値、カラムなどを結合させて表示する機能を持っています。SELECTステートメントでは、複数のカラムに分かれたデータを分けて表示することしかできません。そこで、CONCATを使用することで1つのマスに指定した文字列や数値、カラムを結合させた結果を表示させることができるのです。

    MySQL CONCATの構文を以下で見てみましょう。

    文字列を結合させる場合のコマンド

    文字列を結合させる場合のコマンド

    カラムを結合させる場合のコマンド

    基本的には、「SELECT CONCAT」の後に結合させたい文字列や数値、カラムを指定することで、指定したデータを結合させた結果が表示できます。

    MySQL CONCATの注意点

    結合させた際、指定した文字列やカラム内に「NULL」が含まれている場合には、結果が「NULL」となってしまいます。もし「NULL」を含む文字列・カラムをCONCATで結合させるのであれば、注意しておきましょう。

    MySQL CONCATを使用した例

    MySQL CONCATを使用した例を以下にご紹介していきましょう。

    文字列・数値の結合

    文字列・数値の結合を見ていきます。

    CONCATを含むSELECTステートメント

    出力結果

    上記では、文字列を結合させることができました。次に数値の結合を試してみましょう。

    CONCATを含むSELECTステートメント

    出力結果

    結合させる際の文字列と数値の違いは、「’(シングルクォーテーション)」の有無です。文字列・数値の扱いに気をつけましょう。

    カラム内のデータ結合

    次にカラム内のデータ結合を見ていきます。

    以下のようなテーブルがある前提で説明を進めます。

    animalsテーブル

    上記のテーブルのanimalカラムとnameカラムを結合させて出力してみましょう。

    CONCATを含むSELECTステートメント

    出力結果

    +———————-+ | CONCAT(animal, name) | +———————-+ | catTom | | dogPochi | | tigerShima | | birdPiyo | | lionGao | | hamsterJiro | +———————-+ 6 rows in set (0.00 sec)

    上記のように、CONCATを使えば別のカラムのデータ同士を結合させることも可能です。

    【関連記事】
    ▶︎【初心者から一歩先へ】MySQLのWHERE BETWEEN句で範囲検索!
    ▶︎【テーブル編集】MySQLのALTER TABLEの使い方まとめ

    MySQLでCONCATハンズオンにトライ

    こちらでは、実際にMySQLというデータベースを使用してCONCATを使ってみましょう。

    準備

    まずはMySQLを使用するための準備をしていきます。

    MySQLのインストール・接続

    まだMySQLをインストールしていない場合は、インストールしましょう。

    MySQLのインストールが終了したら、接続します。

    データベースの作成

    次にデータベースをMySQL上に作成し、使用するデータベースを指定しましょう。

    これでMySQLを使用する準備は完了しました。

    ベースとなるテーブルの作成

    次にベースとなるテーブルを作成しましょう。

    テーブルの状態

    MySQL CONCATで2つのカラムを結合

    まずはCONCATを使って2つのカラムを結合させてみましょう。

    CONCATを含むSELECTステートメント

    出力結果

    このように「familyName」カラムと「firstName」カラムを結合させることができました。

    MySQL CONCATで3つのカラムを結合

    次にCONCATを使って3つのカラムを結合させてみましょう。ただし今回は、カラムの間に文字列を挟んでみます。

    CONCATを含むSELECTステートメント

    出力結果

    3つのカラム「bornYear」「bornMonth」「bornDay」の間に「-(ハイフン)」を挟むことができました。

    MySQL CONCATで3つのカラムを結合し、比較演算子を使って結果を抽出

    先ほどの応用で「bornYear」「bornMonth」「bornDay」を結合させ、比較演算子の使用でさらに結果を抽出してみましょう。

    CONCATを含むSELECTステートメント

    出力結果

    上記のSELECTステートメントでは、「bornYear」「bornMonth」「bornDay」を結合させた結果が「20050101」より大きい数値のレコードのみを抽出しました。

    CONCATはWHEREのあとの条件などでも使用することができるということを覚えておきましょう。

    まとめ

    今回の記事では、MySQL CONCATの主な機能をご紹介しつつ、実際に使用する方法をハンズオンで体験していきました。使ってみると非常に簡単なCONCATですが、2つのカラムを結合させたい時などにとても便利です。ぜひ、活用していきましょう。

    【関連記事】
    ▶︎MySQLのcreate tableサンプルコード集 カラム定義を自動出力する方法は?
    ▶︎MySQL初心者にマスターしてほしいコマンドラインからの使用方法



    優良フリーランス案件多数掲載中!
    フリーランスエンジニアの案件をお探しなら
    ポテパンフリーランス

    この記事をシェア

    • Facebookシェア
    • Twitterシェア
    • Hatenaシェア
    • Lineシェア
    pickup









    ABOUT US

    ポテパンはエンジニアと企業の最適なマッチングを追求する企業です。

    READ MORE