0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

MySQLでカラムの値を使った like による部分一致検索

Last updated at Posted at 2020-01-08

先に結論

MySQLでDBのカラムの値を使って部分一致検索をするやり方

コツは、

  • concat関数を使って、%(カラムの値)% という文字列を作る
  • カラムの値が NULL or 空文字だった場合は、検索しないようにする

テーブル定義

create table user
(
   id BIGINT NOT NULL PRIMARY KEY AUTO_INCREMENT,
   name VARCHAR(256) NOT NULL UNIQUE,
   public_profile VARCHAR(256)
)

クエリ

select id
from user u
where u.public_profile like concat('%', u.name, '%')
  and ifnull(length(u.name), 0) > 0;
0
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?