Rumah >pangkalan data >tutorial mysql >Bagaimana Mengisih Keputusan MySQL dengan Nilai NULL Terakhir?

Bagaimana Mengisih Keputusan MySQL dengan Nilai NULL Terakhir?

Linda Hamilton
Linda Hamiltonasal
2024-12-09 00:29:09979semak imbas

How to Sort MySQL Results with NULL Values Last?

Cara Memesan Keputusan MySQL dengan Nilai Null Last

Apabila memesan hasil MySQL dengan lajur angka, nilai nol boleh menjadi masalah kerana ia dianggap sebagai sifar. Ini boleh membawa kepada susunan yang tidak dijangka, di mana nilai nol muncul sebelum nilai bukan nol.

Untuk menangani isu ini, MySQL menawarkan sintaks tidak berdokumen yang membolehkan anda mengisih nilai nol terakhir. Ini dicapai dengan meletakkan tanda tolak (-) sebelum nama lajur dan menukar ASC kepada DESC:

SELECT * FROM tablename WHERE visible=1 ORDER BY -position DESC, id DESC

Sintaks ini pada asasnya menyongsangkan kedudukan susunan DESC, meletakkan nilai nol terakhir sambil mengekalkan susunan yang sama untuk nilai bukan nol.

Sebagai contoh, jika anda mempunyai perkara berikut data:

NULL, NULL, NULL, 1, 2, 3, 4

Menggunakan standard ORDER BY position ASC, id DESC statement akan menghasilkan:

NULL, NULL, NULL, 1, 2, 3, 4

Walau bagaimanapun, menggunakan -position DESC sintaks akan menghasilkan susunan yang diingini:

1, 2, 3, 4, NULL, NULL, NULL

Sintaks tidak berdokumen ini menyediakan cara yang mudah untuk memastikan nilai nol diisih terakhir dalam keputusan MySQL. Adalah penting untuk ambil perhatian bahawa ini bukan ciri SQL standard dan mungkin tidak disokong dalam semua sistem pangkalan data.

Atas ialah kandungan terperinci Bagaimana Mengisih Keputusan MySQL dengan Nilai NULL Terakhir?. 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