Giuseppe Cardascia
unread,Feb 13, 2024, 9:49:55 AM2/13/24You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to
Buon pomeriggio a tutti.
Il risultato sperato è quello di estrapolare dalla tabella tblDegenzeMensili i record relativi ai mesi in cui sono state registrate le presenze giornaliere e dalla tabella tblDegenzeMensiliTemp solo quelli in cui i mesi non sono presenti nella prima tabella.
L'origine query è:
SELECT DISTINCT tblDegenzeMensili.IdDegenzaMensile, tblDegenzeMensili.IDDegenza, tblDegenzeMensili.Anno, tblDegenzeMensili.IDMese, tblDegenzeMensili.[1], tblDegenzeMensili.[2], tblDegenzeMensili.[3], ecc..
FROM tblDegenzeMensili INNER JOIN tblDegenzeMensiliTemp ON tblDegenzeMensili.Anno = tblDegenzeMensiliTemp.Anno
WHERE tblDegenzeMensili.Anno = 2024
UNION SELECT tblDegenzeMensili.IdDegenzaMensile, tblDegenzeMensili.IDDegenza, tblDegenzeMensili.Anno, tblDegenzeMensiliTemp.IDMese, tblDegenzeMensili.[1], tblDegenzeMensiliTemp.[2], tblDegenzeMensiliTemp.[3], eccc
FROM tblDegenzeMensili INNER JOIN tblDegenzeMensiliTemp ON tblDegenzeMensili.Anno = tblDegenzeMensiliTemp.Anno
WHERE tblDegenzeMensiliTemp.Anno = 2024;
La query mi restituisce due record per ogni mese in cui sono presenti le presenze e un record dalla tabella temporanea se mancano nella prima.
Ho provato a modificare la condizione WHERE della seconda tabella con WHERE Anno = 2024 AND IDMese NOT IN (SELECT IDMese FROM tblDegenzeMensili WHERE Anno = 2024) ma mi restituisce solo i record in cui l'anno e il mese sono presenti in entrambe le tabelle.
Come devo modificare l'SQL?
Grazie.
Giuseppe