Mengutamakan Baris Pangkalan Data dengan Nilai Tertentu
Dalam bidang pertanyaan pangkalan data, selalunya wajar untuk mendapatkan semula baris berdasarkan kriteria dan susunan tertentu mereka dengan cara yang dikehendaki. Ini mungkin melibatkan memberi keutamaan kepada baris yang mengandungi nilai tertentu sambil mengekalkan susunan abjad untuk baris yang tinggal.
Mencapai Keutamaan Baris Berasaskan Nilai
Pertimbangkan senario berikut: Anda mempunyai jadual bernama "Pengguna" dengan lajur untuk "id," "nama" dan "bandar." Matlamat anda adalah untuk membina pertanyaan yang mula-mula mendapatkan semula baris dengan lajur "bandar" bersamaan dengan "New York" dan kemudian mengembalikan baris yang tinggal dalam susunan abjad berdasarkan lajur "bandar".
Penyelesaian
Untuk pelbagai sistem pangkalan data seperti SQL Server, Oracle dan DB2, anda boleh menggunakan pertanyaan berikut sintaks:
ORDER BY CASE WHEN city = 'New York' THEN 1 ELSE 2 END, city
Pendekatan ini menggunakan pernyataan CASE untuk menetapkan nilai keutamaan berdasarkan sama ada nilai lajur "bandar" sepadan dengan "New York." Baris dengan "New York" sebagai bandar mereka akan menerima nilai keutamaan 1, manakala baris yang selebihnya akan mendapat nilai keutamaan 2. Klausa ORDER BY kemudian mengisih output mengikut nilai keutamaan dahulu dan kemudian mengikut lajur "bandar" dalam tertib menaik.
Atas ialah kandungan terperinci Bagaimana Mengutamakan Baris Pangkalan Data Berdasarkan Nilai Lajur Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!