MySQLの変数をSQLのLIKEで活用する!
どうでも良い話ですが、設定した変数をLIKE検索で使う場合、%%ってどうすればいいの?というのがわからなかったのでメモしました。
少なくともこの書き方ではない模様
SET @ARTIST='Michael' ; SELECT artist_name FROM artist_master WHERE artist_name LIKE @ARTIST ;
さてさて正解は。。
CONCATを利用してワイルドカードを追記する
SET @ARTIST='Michael' ; SELECT artist_name FROM artist_master WHERE artist_name LIKE CONCAT('%',@ARTIST,'%') ;
。。が正解でした!!
その他
これでもいいですが、変数使い回しができなさそう。
SET @ARTIST='%Michael%' ; SELECT artist_name FROM artist_master WHERE artist_name LIKE @ARTIST ;
MySQLでの変数の使い方については、以前ここにまとめました