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

Oracle không thể cập nhật lên NULL

Từ nhận xét của bạn, tôi đọc rằng bạn dường như muốn ghi một bản ghi mặc định vào bảng đích của mình, trong trường hợp truy vấn con không trả về bất kỳ bản ghi nào. Vì vậy, cách chính xác để cụm từ truy vấn của bạn sẽ là sử dụng MERGE tuyên bố như vậy:

MERGE INTO "SCHEMA1"."CELLS_GLIST" dst
USING (
  -- rephrase your subquery here. This is your "merge data source". The number
  -- of records returned in this subquery will correspond to the number of
  -- affected records in dst
) src
ON (
  -- the missing exists condition here. Everytime this condition matches a record
  -- between dst and src, an UPDATE is performed. Otherwise, an INSERT is
  -- performed
)
WHEN MATCHED THEN UPDATE 
  SET dst."GLIST_VALUE_ID" = src."GLIST_VALUE_ID"
WHEN NOT MATCHED THEN INSERT ("GLIST_VALUE_ID", "USER_ID", "SESSION_ID")
  VALUES (NULL, 1, 123456);

Đây chỉ là để cung cấp cho bạn một ý tưởng. Tôi không rõ bạn đang cố gắng đạt được điều gì một cách chi tiết, vì vậy tôi đã bỏ qua các truy vấn phụ và điều kiện



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. cài đặt cx_oracle cho python

  2. Cách tính tổng số đang chạy trong SQL

  3. ORA-01036:tên / số biến không hợp lệ trong khi gọi hàm được lưu trữ

  4. Làm cách nào để chỉ trích xuất Thời gian từ trường DateTime trong Oracle SQL Developer?

  5. % ROWTYPE biến từ tên bảng