Rumah >pangkalan data >tutorial mysql >Bagaimana Mengutamakan Baris Khusus dalam Pertanyaan Pangkalan Data?

Bagaimana Mengutamakan Baris Khusus dalam Pertanyaan Pangkalan Data?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-30 05:32:09978semak imbas

How to Prioritize Specific Rows in Database Queries?

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!

Kenyataan:
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