Heim > Datenbank > MySQL-Tutorial > Was sind die MySQL-Alternativen zu Oracles RowID?

Was sind die MySQL-Alternativen zu Oracles RowID?

Linda Hamilton
Freigeben: 2024-12-05 00:34:11
Original
894 Leute haben es durchsucht

What are the MySQL Alternatives to Oracle's RowID?

MySQL-Äquivalent zur RowID von Oracle

In MySQL gibt es kein direktes Äquivalent zur RowID von Oracle. Es gibt jedoch mehrere Möglichkeiten, eine ähnliche Funktionalität zu erreichen.

Ein Ansatz besteht darin, Sitzungsvariablen und Unterabfragen zu verwenden:

SELECT @rowid:=@rowid+1 as rowid
FROM table1, (SELECT @rowid:=0) as init
ORDER BY sorter_field
Nach dem Login kopieren

Dadurch wird jeder Zeile eine eindeutige Kennung zugewiesen, die verwendet werden kann zum Sortieren oder für andere Zwecke.

Ein anderer Ansatz zum Löschen doppelter Datensätze besteht darin, eine temporäre Tabelle zu erstellen und einen Join zwischen der temporären Tabelle und dem Original durchzuführen Tabelle:

CREATE TEMPORARY TABLE duplicates ...

INSERT INTO duplicates (rowid, field1, field2, some_row_uid)
SELECT
  @rowid:=IF(@f1=field1 AND @f2=field2, @rowid+1, 0) as rowid,
  @f1:=field1 as field1,
  @f2:=field2 as field2,
  some_row_uid
FROM testruns t, (SELECT @rowid:=NULL, @f1:=NULL, @f2:=NULL) as init
ORDER BY field1, field2 DESC;

DELETE FROM my_table USING my_table JOIN duplicates
  ON my_table.some_row_uid = duplicates.some_row_uid AND duplicates.rowid > 0
Nach dem Login kopieren

Dieser Ansatz wird empfohlen, wenn die Sortierung für die Tabelle, aus der in Unterabfragen gelöscht wird, nicht durchgeführt werden kann.

Das obige ist der detaillierte Inhalt vonWas sind die MySQL-Alternativen zu Oracles RowID?. 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