Rumah >pangkalan data >tutorial mysql >Bagaimana Mengutamakan Baris Khusus dalam Pertanyaan Pangkalan Data?
Memulangkan Baris dengan Nilai Tertentu Didahulukan
Dalam pertanyaan pangkalan data tertentu, adalah wajar untuk mengutamakan paparan baris yang mengandungi nilai tertentu . Sebagai contoh, pertimbangkan jadual berikut:
Jadual: Pengguna
id | name | city |
---|---|---|
1 | George | Seattle |
2 | Sam | Miami |
3 | John | New York |
4 | Amy | New York |
5 | Eric | Chicago |
6 | Nick | New York |
Jika kita ingin mendapatkan semula baris di mana lajur bandar mengandungi "New York" dahulu, dan kemudian baki baris dalam susunan abjad bandar, kita boleh menggunakan pertanyaan berikut:
SQL Server, Oracle dan DB2:
ORDER BY CASE WHEN city = 'New York' THEN 1 ELSE 2 END, city
Pertanyaan ini menggunakan ungkapan CASE untuk menetapkan keutamaan 1 kepada baris dengan "New York" sebagai nilai bandar dan keutamaan 2 sebaliknya. Klausa ORDER BY kemudian menggunakan keutamaan ini bersama-sama dengan lajur bandar untuk mengisih. Akibatnya, baris dengan "New York" akan dikembalikan dahulu, diikuti dengan baris lain yang disusun mengikut abjad mengikut bandar.
Atas ialah kandungan terperinci Bagaimana Mengutamakan Baris Khusus dalam Pertanyaan Pangkalan Data?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!