Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Aktualizacja skorelowana z Oracle SQL

Jeśli istnieje relacja jeden-do-wielu między t1 i t2 lub między t2 i t3, otrzymasz wiele dopasowań dla każdego wiersza w t1. Jeśli wiesz, że wszystkie wiersze w t3 należące do tego samego wiersza w t1 mają tę samą wartość w d, możesz użyć DISTINCT aby usunąć (identyczne) duplikaty.

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. Na podstawie dnia kolumny połączonego z datą jako nagłówkiem

  2. Wyciek pamięci dzięki OracleCommand

  3. Jak utworzyć łącze DB między dwiema instancjami Oracle?

  4. Struktura i typy bloków Oracle PLSQL

  5. Kopiowanie danych między schematami Oracle za pomocą SQL