- MySQL
- 2022-11-26
この記事は最終更新日から1年以上経過しています。
LOCATE関数を使うと指定した文字列が最初に出現する位置を調べることができます。
【書式】
LOCATE(substr, str)
LOCATE(substr, str, pos)
【引数】
substr
:検索文字列
str
:検索対象文字列
pos
:オフセット
pos
は何文字目以降を検索するかを数値で指定します。
例)
mysql> SELECT LOCATE('bar', 'foobarbar'); -> 4 mysql> SELECT LOCATE('xbar', 'foobar'); -> 0 mysql> SELECT LOCATE('bar', 'foobarbar', 5); -> 7
INSTR関数も同様の動作をしますが、引数の順序が逆なのと、第3引数がないのでご注意ください。
mysql> SELECT INSTR('foobarbar', 'bar'); -> 4 mysql> SELECT INSTR('xbar', 'foobar'); -> 0
1,947 views