Heim >Datenbank >MySQL-Tutorial >Wie kann ich MySQL-Daten mit NULL-Werten am Ende sortieren?

Wie kann ich MySQL-Daten mit NULL-Werten am Ende sortieren?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-09 03:32:13638Durchsuche

How Can I Sort MySQL Data with NULL Values at the End?

MySQL-NULL-Filterung und -Sortierung

Beim Ordnen von Daten in MySQL mit ORDER BY werden Nullwerte als 0 behandelt, was zu Inkonsistenzen in der gewünschten Reihenfolge führt . Um dieses Problem zu beheben, sollten Sie die Verwendung einer speziellen Syntax in Betracht ziehen, um Nullen am Ende der sortierten Liste zu erzwingen.

Um Werte in aufsteigender Reihenfolge zu sortieren und Nullen am Ende zu platzieren, verwenden Sie die folgende Syntax:

ORDER BY -position DESC

Dies kehrt die standardmäßige ASC-Reihenfolge für die Positionsspalte um und behandelt Nullwerte effektiv als den höchsten Wert. Indem Sie dies mit einer DESC-Reihenfolge für die ID-Spalte kombinieren, können Sie die gewünschte Reihenfolge erreichen:

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

Dies führt zu der folgenden Reihenfolge:

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

Bedenken Sie, dass diese Syntax ist ist in MySQL nicht dokumentiert und möglicherweise nicht in allen Versionen verfügbar. Eine umfassende Referenz finden Sie in der MySQL-Dokumentation zu ORDER BY mit zusätzlichen Flags.

Das obige ist der detaillierte Inhalt vonWie kann ich MySQL-Daten mit NULL-Werten am Ende sortieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn