In der SQL-Programmiersprache (Skriptsprache) für Datenbankoperationen stellt dieser Artikel vor, wie man die Ausgabe von select umkehrt.
Es gibt Situationen, in denen Sie die Ausgabe von SQL select umkehren möchten. Zum Beispiel wollen wir in diesem Fall einige Zwischenablagenverläufe aus der Datenbank “in der Reihenfolge, in der sie in die Zwischenablage kopiert wurden” abrufen.
Bash hat einen Befehl namens tac, der Befehlsausgabeergebnisse umkehrt. Je nach Situation können Sie SQL select zur Standardausgabe ausgeben und dann tac verwenden, aber wenn es Felder mit Zeilenumbrüchen gibt, sind Befehle wie tac sinnlos.
Wenn Sie diese Art von Verarbeitung durchführen, sollten Sie es auf der SQL-Seite handhaben, aber wie genau sollten Sie es tun?
Wir haben SQL wie dieses:
SELECT mText from Main
WHERE mText REGEXP "."
order by clipOrder desc
LIMIT 3 OFFSET 0
Dies erzeugt Ausgabe wie:
hoge
fuga
foo
Wir wollen dies ändern zu:
foo
fuga
hoge
Übergeben Sie eine Unterabfrage an select und sortieren Sie sie erneut.
SELECT q.mText
FROM (SELECT * from Main
WHERE mText REGEXP "."
order by clipOrder desc
LIMIT 3 OFFSET 0) as q
ORDER BY q.clipOrder ASC