MySQL リストから指定した値の位置を取得する

  • 作成日 2022.05.24
  • 更新日 2022.10.15
  • mysql
MySQL リストから指定した値の位置を取得する

MySQLで、リストから指定した値の位置を取得する手順を記述してます。

環境

  • OS ubuntu21.10
  • MySQL Ver 8.0.27-0ubuntu0.21.10.1 for Linux on x86_64 ((Ubuntu))
  • MySQL Workbench 8.0.27

手順

リストから指定した値の位置を取得する場合は、「FIELD」を使用します。

FIELD(検索する文字列,文字列,文字列,文字列)

実際に、実行して確認してみます。

SELECT 
FIELD('a', 'b', 'a', 'c'),
FIELD('b', 'b', 'a', 'c'),
FIELD('c', 'b', 'a', 'c')

実行結果を見ると第一引数に指定した値の位置が取得されていることが確認できます。

数値を指定

数値を指定しても、同じ結果になります。

SELECT 
FIELD(1 ,2 ,1 ,3),
FIELD(2 ,2 ,1 ,3),
FIELD(3 ,2 ,1 ,3)

実行結果

値が存在しない場合は

値が存在しない場合は「0」が返ります。

SELECT 
FIELD(11 ,2 ,1 ,3)

実行結果