Heim > Datenbank > MySQL-Tutorial > Wie finde ich die Zeilenposition eines bestimmten Eintrags in einer MySQL-Abfrage „ORDER BY'?

Wie finde ich die Zeilenposition eines bestimmten Eintrags in einer MySQL-Abfrage „ORDER BY'?

Susan Sarandon
Freigeben: 2025-01-18 02:36:08
Original
799 Leute haben es durchsucht

How to Find the Row Position of a Specific Entry in a MySQL `ORDER BY` Query?

Zeilenposition in der MySQL-ORDER BY-Abfrage finden

Beim Sortieren einer MySQL-Tabelle in aufsteigender Reihenfolge nach einer bestimmten Spalte kann die Bestimmung der Position einer bestimmten Zeile eine nützliche Aufgabe sein. Hier ist die Lösung zum Abrufen einer einzelnen Zeile und ihrer Position unter anderen sortierten Zeilen:

Mithilfe der integrierten Variablen und Unterabfragen von MySQL kann die folgende Abfrage diese Aufgabe erfüllen:

<code class="language-sql">SELECT x.id,
       x.position,
       x.name
  FROM (SELECT t.id,
               t.name,
               @rownum := @rownum + 1 AS position
          FROM TABLE t
          JOIN (SELECT @rownum := 0) r
      ORDER BY t.name) x
 WHERE x.name = 'Beta'</code>
Nach dem Login kopieren

In dieser Abfrage:

  • Wir verwenden eine Unterabfrage, um jeder Zeile eine Position basierend auf der Sortierreihenfolge der Spalte „Name“ zuzuweisen.
  • Die @rownum-Variable wird auf 0 initialisiert und für jede Zeile erhöht.
  • Die äußere Abfrage filtert dann die Ergebnisse der Unterabfrage, um Zeilen mit dem Namen „Beta“ zu finden.

Das Ergebnis ist eine einzelne Zeile, die die entsprechende Position in der Sortierreihenfolge enthält.

Das obige ist der detaillierte Inhalt vonWie finde ich die Zeilenposition eines bestimmten Eintrags in einer MySQL-Abfrage „ORDER BY'?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage