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

Câu lệnh SQL để đối chiếu

còn điều này thì sao:

  INSERT INTO TBL_RESULT (ID, TBL1_ID, TBL2_ID) 
  SELECT seq_tbl_result.nextval,t1.id,t2.id 
  FROM
  (SELECT t1.match_criteria,t1.id, row_number() OVER (PARTITION BY t1.match_criteria ORDER BY t1.id) rn 
   FROM tbl1 t1) t1,  
  (SELECT t2.match_criteria,t2.id, row_number() OVER (PARTITION BY t2.match_criteria ORDER BY t2.id) rn 
   FROM tbl2 t2) t2
  WHERE t1.match_criteria=t2.match_criteria AND t1.rn=t2.rn

Lưu ý:Nó giả định rằng có một số lượng hàng bằng nhau trong mỗi nhóm đối sánh trong cả hai bảng.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chọn tất cả các cột từ bảng 1 và một cột từ bảng hai được nhóm theo?

  2. Kiểm thử đơn vị cho PL / SQL

  3. Cập nhật các cột có giá trị Null

  4. Hàm Java 6 hoạt động trong dòng lệnh, nhưng không hoạt động trên máy chủ Oracle (AES 256)

  5. Thực thi nhiều lệnh dưới dạng tên người dùng khác trong một tệp trong trình bao BASH