Die Verwendung eines ORDER BY
innerhalb eines INSERT SELECT
ist nicht sinnlos solange es den Inhalt der eingefügten Daten ändern kann, d. h. mit einer Sequenz NEXTVAL
in SELECT
enthalten Klausel. Und das auch dann, wenn die eingefügten Zeilen beim Abrufen nicht sortiert werden - das ist die Aufgabe Ihres ORDER BY
-Klausel in Ihrem SELECT
-Klausel beim Zugriff auf die Zeilen.
Für ein solches Ziel können Sie eine Problemumgehung verwenden, indem Sie Ihren ORDER BY
eingeben -Klausel in einer Unterabfrage , und es funktioniert:
INSERT INTO myTargetTable
(
SELECT mySequence.nextval, sq.* FROM
( SELECT f1, f2, f3, ...fx
FROM mySourceTable
WHERE myCondition
ORDER BY mySortClause
) sq
)