Trong MySQL, bạn có thể sử dụng ELT()
chức năng trả về một mục danh sách tại một vị trí nhất định trong danh sách.
Cú pháp như sau:
ELT(N,str1,str2,str3,...)
Ở đâu N
là vị trí của mục bạn muốn trả về và str1,str2,str3,...
là danh sách.
Ví dụ
Đây là một ví dụ:
SELECT ELT(3, 'Marge', 'Homer', 'Bart') AS 'Who is at 3?';
Kết quả:
+--------------+ | Who is at 3? | +--------------+ | Bart | +--------------+
Trong trường hợp này, chúng tôi chỉ định rằng chúng tôi muốn trả lại mục thứ 3 trong danh sách (vì đối số đầu tiên là 3
). Và trong trường hợp này, danh sách là 'Marge', 'Homer', 'Bart'
, vì vậy mục thứ 3 là Bart
.
Số
Dưới đây là một ví dụ có chứa các số:
SELECT ELT(3, 9, 8, 7) AS 'The 3rd item is...';
Kết quả:
+--------------------+ | The 3rd item is... | +--------------------+ | 7 | +--------------------+
Ví dụ về cơ sở dữ liệu
Dưới đây là một ví dụ mà tôi đối sánh kết quả của một truy vấn cơ sở dữ liệu với một danh sách các giá trị:
SELECT GenreId, ELT(GenreId, 'Rock', 'Jazz', 'Country') AS Genre FROM Genres;
Kết quả:
+---------+---------+ | GenreId | Genre | +---------+---------+ | 1 | Rock | | 2 | Jazz | | 3 | Country | | 4 | NULL | | 5 | NULL | | 6 | NULL | | 7 | NULL | | 8 | NULL | +---------+---------+
Trong trường hợp này, có nhiều kết quả hơn tôi đã bao gồm dưới dạng tham số, do đó, những kết quả đó là NULL
.
ELT()
hàm là phần bổ sung cho FIELD()
, cho phép bạn tìm vị trí chỉ mục của một mục nhất định trong danh sách.