MySQLでは、ELT()
を使用できます リスト内の特定の位置にあるリストアイテムを返す関数。
構文は次のようになります:
ELT(N,str1,str2,str3,...)
ここでN
返品するアイテムの位置であり、str1,str2,str3,...
リストです。
例
次に例を示します:
SELECT ELT(3, 'Marge', 'Homer', 'Bart') AS 'Who is at 3?';
結果:
+--------------+ | Who is at 3? | +--------------+ | Bart | +--------------+
この場合、リストの3番目のアイテムを返すように指定します(最初の引数が3
であるため) )。この場合、リストは'Marge', 'Homer', 'Bart'
です。 、したがって、3番目のアイテムはBart
。
数字
数字を含む例を次に示します。
SELECT ELT(3, 9, 8, 7) AS 'The 3rd item is...';
結果:
+--------------------+ | The 3rd item is... | +--------------------+ | 7 | +--------------------+
データベースの例
これは、データベースクエリの結果を値のリストと照合する例です。
SELECT GenreId, ELT(GenreId, 'Rock', 'Jazz', 'Country') AS Genre FROM Genres;
結果:
+---------+---------+ | GenreId | Genre | +---------+---------+ | 1 | Rock | | 2 | Jazz | | 3 | Country | | 4 | NULL | | 5 | NULL | | 6 | NULL | | 7 | NULL | | 8 | NULL | +---------+---------+
この場合、パラメーターとして含めた結果よりも多くの結果があったため、これらの結果はNULL
です。 。
ELT()
関数はFIELD()
を補完するものです リスト内の特定のアイテムのインデックス位置を見つけることができる関数。