Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Pembaruan berkorelasi Oracle SQL

Jika ada hubungan satu ke banyak antara t1 dan t2 atau antara t2 dan t3 Anda akan mendapatkan banyak kecocokan untuk setiap baris di t1. Jika Anda tahu bahwa semua baris di t3 yang termasuk dalam baris yang sama di t1 memiliki nilai yang sama di d, maka Anda dapat menggunakan DISTINCT untuk menghapus duplikat (identik).

UPDATE table1 t1
   SET t1.c = (select DISTINCT t3.d
               from table2 t2, table3 t3
               where t2.b = t3.b and t1.a = t2.a)                                  
 WHERE EXISTS ( SELECT 1 FROM table2 t2, table3 t3 WHERE t1.c = t3.c and t1.a = t2.a);


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Apakah ada cara untuk membuat ulang paket ODI menggunakan Skenario ODI?

  2. Pernyataan Oracle SELECT lambat

  3. Mendapatkan baris pertama dari LEFT OUTER JOIN

  4. Perbandingan tanggal Oracle rusak karena DST

  5. Dapatkan daftar semua fungsi dan prosedur dalam database Oracle