Salve sto convertendo il mio db access in postgres, ho una query di aggiornamento che non riesco a fare.
devo aggiornare i campi di una tabella con un left join ad un'altra tabella in maniera che non trovi riscontro e una condizione where nella tabella da aggiornare
Questa è come l'ho tradotta io in postgres ma non mi funziona, penso ci sia un problema perchè la tabella proiez_righe compare due volte ed ho usato un alias
UPDATE bilancio.proiez_righe
SET codice_calcolo_anno = ‘A_04’
FROM bilancio.proiez_righe AS pr
LEFT JOIN
bilancio.proiez_crediti_debiti AS pc ON pr.codice = pc.liv1 AND pr.azienda = pc.az
WHERE
(pr.codice_calcolo_anno = 'A_07' OR pr.codice_calcolo_anno = 'A_08') AND pc.liv1 IS NULL;
la query in access era
UPDATE PROIEZ_RIGHE LEFT JOIN PROIEZ_CREDITI_DEBITI ON (PROIEZ_RIGHE.CODICE = PROIEZ_CREDITI_DEBITI.LIV1) AND (PROIEZ_RIGHE.AZIENDA = PROIEZ_CREDITI_DEBITI.AZ) SET PROIEZ_RIGHE.CODICE_CALCOLO_ANNO ="A_04"
WHERE (((PROIEZ_RIGHE.CODICE_CALCOLO_ANNO)="A_07" Or (PROIEZ_RIGHE.CODICE_CALCOLO_ANNO)="A_08") AND ((PROIEZ_CREDITI_DEBITI.LIV1) Is Null));
praticamente voglio che mi cambi il campo codice_calcolo_anno per tutte quelle righe che hanno codice_calcolo_anno = 'A_07' OR codice_calcolo_anno = 'A_08' e che non trovano riscontro nella tabella proiez_crediti_debiti
Grazie