Am această interogare sql
(select x.a, x.b, x.c, x.d
from tableX x
where x.a IS NOT NULL
minus
select y.a, y.b, y.c, y.d
from tableY y);
Interogarea de mai sus revine mine toate tableX de date, care este diferit de tableY. Mai multe tupluri sunt returnate
Dovezi:
Atunci când am rula mai sus interogare am obține acest rezultat:
o | b | c |
---|---|---|
1 | 43 | 65 |
2 | 66 | 333 |
Când am selectați datele din tableY primesc asta:
o | b | c |
---|---|---|
1 | 54 | 65 |
2 | 88 | 567 |
tableY datele sunt datele corecte, așa că vreau să actualizați toate tuplurile care sunt returnate de prima interogare(cea cu MINUS clauza) cu datele din tableY.
Rezultatul așteptat, după actualizarea clauzei, când am selectați datele din tableX ar trebui să fie:
o | b | c |
---|---|---|
1 | 54 | 65 |
2 | 88 | 567 |
Ceea ce este cel mai eficcient mod de a face acest UPDATE clauza?