SQL ある文字列を含むレコードを検索するクエリ

SQL ある文字列を含むレコードを検索するクエリ

新人に質問されてサンプルクエリを作成したので、記述してます。 MYSQLをベースの DB「Percona」を利用してます。

環境

  • OS CentOS Linux release 8.0.1905 (Core)
  • Percona Server Ver 8.0.19-10

※CentOs8 に Percona Server のインストールはこちら

サンプル

テーブル「employees」のカラム「name(名前として利用)」に「山」が含まれているデータを抽出する場合
※ テーブル「employees」 データ一覧はページ最後に記載してます。

「LIKE」を使用して、下記のクエリで抽出できます。

名前に漢字の「山」が含まれているnameが取得できる

名前の一文字目に「山」が入っている人を取得する場合は下記

一文字目に 「山」が含まれているnameが取得できる

名前の二文字目に「山」が入っている人を取得する場合は下記となります。

二文字目に 「山」が含まれているnameが取得できる

逆に名前に「山」が含まれていないデータを抽出する場合は「NOT LIKE」を使用します。

名前に「山」が含まれていないnameが取得できます。

テーブル「employees」データ一覧