Rumah > pangkalan data > tutorial mysql > Bagaimanakah Saya Boleh Mengutamakan Pesanan Isih Tersuai dalam MySQL?

Bagaimanakah Saya Boleh Mengutamakan Pesanan Isih Tersuai dalam MySQL?

Linda Hamilton
Lepaskan: 2024-12-14 08:11:11
asal
516 orang telah melayarinya

How Can I Prioritize Custom Sorting Orders in MySQL?

Menyesuaikan Keutamaan Isih dalam MySQL

Dalam MySQL, mentakrifkan susunan isihan tersuai membolehkan anda mengutamakan kriteria tertentu apabila mendapatkan data. Satu tugas sedemikian melibatkan pengisihan jadual dengan berbilang nilai dalam lajur.

Pertimbangkan jadual berikut:

ID  Language    Text
0   ENU         a
0   JPN         b
0   DAN         c       
1   ENU         d
1   JPN         e
1   DAN         f
2   etc...
Salin selepas log masuk

Untuk mendapatkan semula data yang diisih mengikut bahasa dan ID menaik, dengan ENU menjadi keutamaan pertama , JPN yang kedua, dan DAN yang ketiga, anda boleh menggunakan fungsi FIELD() MySQL. Fungsi ini memberikan kedudukan kepada setiap nilai bahasa berdasarkan susunan yang disediakan.

Berikut ialah pertanyaan untuk mencapai ini:

SELECT *
FROM table_name
ORDER BY FIELD(Language, 'ENU', 'JPN', 'DAN'), ID;
Salin selepas log masuk

Ini akan mengembalikan data dalam susunan berikut: a, d , b, e, c, f. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa:

  • Menggunakan FIELD() boleh menjejaskan kemudahalihan, kerana DBMS lain mungkin tidak menyokong fungsi ini.
  • Untuk senarai nilai lanjutan, adalah lebih baik untuk mencipta jadual berasingan dengan lajur "sortOrder". Dengan menyertai jadual ini ke jadual utama, anda boleh mencapai pengisihan tersuai tanpa had FIELD().

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengutamakan Pesanan Isih Tersuai dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan