RRN() ist tatsächlich eine reine AS/400-Funktion und ausserdem NICHT SICHER.
Durch RGZPFM und Angabe einer LF als Sortierfolge kann sich die RRN verändern.
Bei TABLE's wird REUSEDLT(*YES) gesetzt, so dass es bei Wiederverwendung eines gelöschten Satzes zur selben RRN kommt.

Die RRN darf deshalb auch nicht als Verweis aus einer anderen Tabelle verwendet werden.
Ein "Select ... where RRN()=Fremdschluessel" führt immer zu einem Tablescan, da über RRN nicht direkt zugegriffen werden kann.

Für solche Zwecke eignen sich AutoNum-Felder oder SEQUENCE-Datenbereiche.
Die meisten anderen DB's unterstützten dieses auch.