INSTR( 検索対象文字列, 検索文字列 )
INSTR関数を使用することで特定の文字列が最初に出現する位置を調べることができます。
検索文字列が見つかった場合はその位置を、見つからなかった場合は0を返します。
mysql> SELECT INSTR( 'MySQL', 'SQ' ); +------------------------+ | INSTR( 'MySQL', 'SQ' ) | +------------------------+ | 3 | +------------------------+ 1 row in set (0.00 sec)
mysql> SELECT INSTR( 'Linux+Apache+MySQL+PHP', 'Perl' ); +-------------------------------------------+ | INSTR( 'Linux+Apache+MySQL+PHP', 'Perl' ) | +-------------------------------------------+ | 0 | +-------------------------------------------+ 1 row in set (0.00 sec)
mysql> SELECT INSTR( 'Linux+Apache+MySQL+PHP', 'php' ); +------------------------------------------+ | INSTR( 'Linux+Apache+MySQL+PHP', 'php' ) | +------------------------------------------+ | 0 | +------------------------------------------+ 1 row in set (0.00 sec)
同じ動作をする関数にLOCATE関数とPOSITION関数があります
ただLOCATE関数では検索開始位置を指定できる点が異なります。