Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Cara Mengembalikan Posisi Argumen dalam Daftar Argumen di MySQL

Di MySQL, Anda dapat menggunakan FIELD() fungsi untuk mengembalikan posisi string atau angka yang diberikan dalam daftar argumen. Fungsi mengembalikan indeks (posisi) argumen pertama dalam daftar argumen berikutnya.

Sintaksnya seperti ini:

FIELD(str,str1,str2,str3,...)

Dimana str adalah item yang ingin Anda temukan, dan str1,str2,str3,... adalah daftar yang Anda cari.

Ini contohnya:

SELECT FIELD('Homer', 'Marge', 'Homer', 'Bart') AS 'Where is Homer?';

Hasil:

+-----------------+
| Where is Homer? |
+-----------------+
|               2 |
+-----------------+

Dalam contoh ini, daftarnya adalah:'Marge', 'Homer', 'Bart' dan kami sedang mencari string Homer dalam daftar itu. Dan karena Homer adalah item ke-2 dalam daftar argumen, hasilnya adalah 2 .

Pencocokan Tepat

Perhatikan bahwa itu harus sama persis, jika tidak maka akan mengembalikan 0 .

Misalnya, jika kita membuang r dari Homer , kami akhirnya mencari Home sebagai gantinya:

SELECT FIELD('Home', 'Marge', 'Homer', 'Bart') AS 'Where is Home?';

Hasil:

+-----------------+
| Where is Home? |
+-----------------+
|               0 |
+-----------------+

Dalam hal ini, meskipun Homer berisi Home , itu bukan pencocokan persis dan hasilnya 0 .

 Angka

FIELD() fungsi juga bekerja dengan angka:

SELECT FIELD(1, 3, 2, 1) AS 'Where is 1?';

Hasil:

+-------------+
| Where is 1? |
+-------------+
|           3 |
+-------------+

Ketika semua argumen ke FIELD() adalah angka, semua argumen dibandingkan sebagai angka. Jika semuanya adalah string, mereka dibandingkan sebagai string. Jika dicampur, mereka akan dibandingkan sebagai dua kali lipat.

FIELD() fungsi adalah pelengkap dari ELT() fungsi, yang memungkinkan Anda menemukan item daftar berdasarkan posisinya dalam daftar.

Lihat juga Cara Mengembalikan Posisi Item Daftar menggunakan FIND_IN_SET() fungsi.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. PHP/MySQL Masukkan nilai nol

  2. Cara Mengatur Set Karakter dan Susunan Tabel di MySQL

  3. Bagaimana cara mengaktifkan koneksi ulang otomatis klien MySQL dengan MySQLdb?

  4. Di mana lokasi mysql client .my.cnf di XAMPP untuk Windows?

  5. MySQL> Tabel tidak ada. Tapi memang (atau seharusnya)