Salve a tutti, spero possiate aiutarmi, STO IMPAZZENDO.
Ho una tabella iscritti_uil_ composta tra le altre da:
id azienda
cognome
nome
data iscrizione
data disdetta
ecco, il problema è: vorrei una query in cui nel momento io chiedo ad una certa data es. dal 01/01/17 al 31/05/17, mi escano fuori n. tot. iscritti attivi composti da tutti gli iscritti dal 01/01/17 al 28/02/17 (data iscrizione) ma sottraendo eventuali disdette
future degli stessi (data disdetta) dal 28/02/17 in poi.
esempio: rossi marco iscritto 05/01/17 e disdettato il 25/03/17 vorrei che se chiedo iscritti al 31/01/17 mi compaia attivo, mentre se chiedo iscritti al 31/03/17 non mi compaia.
questa è la query che ho creato, ma non funziona:
SELECT ISCRITTI_UIL_.ID_aziende, AZIENDE.azienda, ISCRITTI_UIL_.COGNOME, ISCRITTI_UIL_.[DATA ISCRIZIONE], ISCRITTI_UIL_.[DATA DISDETTA], ISCRITTI_UIL_.[SETTORE CONTRATTO], ISCRITTI_UIL_.NOME, ISCRITTI_UIL_.[REFERENTE SINDACALE], ISCRITTI_UIL_.[DATA ISCRIZIONE],
[Data Inizio gg/mm/aaaa - OBBLIGATORIO] AS Espr1, [Data Fine gg/mm/aaaa - OBBLIGATORIO] AS Espr2
FROM AZIENDE INNER JOIN ISCRITTI_UIL_ ON AZIENDE.ID_aziende = ISCRITTI_UIL_.ID_aziende
WHERE (((ISCRITTI_UIL_.[DATA ISCRIZIONE])>=[Data Inizio gg/mm/aaaa - OBBLIGATORIO] And (ISCRITTI_UIL_.[DATA ISCRIZIONE])<=[Data Fine gg/mm/aaaa - OBBLIGATORIO]) AND ((ISCRITTI_UIL_.[DATA DISDETTA])<=[data disdetta]) AND (([Data Fine gg/mm/aaaa - OBBLIGATORIO])>=[Data
Fine gg/mm/aaaa - OBBLIGATORIO])) OR (((ISCRITTI_UIL_.[DATA DISDETTA]) Is Null))
ORDER BY AZIENDE.azienda, ISCRITTI_UIL_.[DATA ISCRIZIONE];
aiutatemi sto fondendo.
grazie silvio