Oracle
 sql >> база данни >  >> RDS >> Oracle

Oracle Insert Select с поръчка по

Използването на ORDER BY в рамките на INSERT SELECT ене безсмислено стига да може да промени съдържанието на вмъкнатите данни, т.е. с последователност NEXTVAL включени в SELECT клауза. И това дори ако вмъкнатите редове няма да бъдат сортирани при извличане - това е ролята на вашия ORDER BY клауза във вашия SELECT клауза при достъп до редовете.

За такава цел можете да използвате заобикалящо решение, като поставите вашия ORDER BY клауза в подзаявка , и работи:

INSERT INTO myTargetTable
(
  SELECT mySequence.nextval, sq.* FROM
    (   SELECT f1, f2, f3, ...fx 
          FROM mySourceTable
         WHERE myCondition
      ORDER BY mySortClause
    ) sq
)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Инсталиране на Oracle Warehouse Builder 11g R2 Client

  2. Разлика в датата на Oracle, за да получите брой години

  3. Има ли най-добрият начин да избегнете изпълнението на процес повече от веднъж в Oracle?

  4. Как да намерим служителя с втората най-висока заплата?

  5. Кой е най-ефективният начин да проверите дали съществува запис в Oracle?