Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Truy vấn cập nhật Oracle để cập nhật các bản ghi theo thứ tự tuần tự

Giải pháp này cho cùng một câu hỏi mà bạn đã tham khảo cho biết cách thực hiện:

update employee set emp_id = (
  with tab as (
    select emp_id, rownum r
    from   (select emp_id from employee order by emp_id)
  )
  select r from tab where employee.emp_id = tab.emp_id
);

Điều đó hoạt động. Bạn không thể cập nhật chế độ xem có chứa hàm phân tích như row_number - hãy xem Tài liệu Oracle 12C , hãy tìm "Ghi chú về Chế độ xem có thể cập nhật".



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tìm kiểu con số (smallint, int, v.v.) trong oracle

  2. CHÈN ORACLE TRIGGER VÀO ... (CHỌN * ...)

  3. Oracle và lập trình

  4. Cách lấy 10 vị trí ngoài cùng bên phải của một chuỗi trong oracle

  5. ORA-04091:table [blah] đang đột biến, trình kích hoạt / chức năng có thể không nhìn thấy nó