ho una tabella con due campi datainizio e datafine
come faccio a costruire una ricerca per recuperare i record compresi fra datainizio e datafine .... comprendendo anche quelli la cui datafine è NULL ?
ciao
ho una tabella con due campi datainizio e datafine
come faccio a costruire una ricerca per recuperare i record compresi fra datainizio e datafine .... comprendendo anche quelli la cui datafine è NULL ?
ciao
guarda l'istruzione Between
Non si può risolvere un problema usando lo stesso modo di pensare che ha creato quel problema.
Albert Einstein
Siate Affamati, siate Folli, siate Onesti e siate Generosi
Se ho capito bene vuoi che tiri fuori i record la cui data_inizio è compresa in un certo intervallo e la data_fine è compresa in un certo intervallo oppure è nulla.
Se è questo quello che volevi fare il codice che ti metto sotto funziona benissimo in oracle.
(to_date(to_char(data_inizio,'dd-mm-yyyy'),'dd-mm-yyyy')
between to_date('01-01-2015','dd-mm-yyyy') and
to_date(nvl('15-01-2015',to_char(sysdate,'dd-mm-yyyy')),'dd-mm-yyyy')) and
((to_date(to_char(data_fine,'dd-mm-yyyy'),'dd-mm-yyyy') between to_date('01-01-2015','dd-mm-yyyy') and
to_date(nvl('15-01-2015',to_char(sysdate,'dd-mm-yyyy')),'dd-mm-yyyy')) or data_fine is null)
mi spiego meglio: ho una tabella con gli uffici uno a molti con una tabella responsabiliuffici a sua volta relazionata molti a uno con la tabella dei dipendenti
un dipendente può essere responsabili di più uffici e un ufficio può avere nel corso del tempo più responsabili.
ora devo costruire una query che mi faccia vedere sempre tutti gli uffici e che mi visualizzi i responsabili ad una certa data immessa come parametro.
questa è la faccenda
Da quello che ho capito ogni ufficio in un determinato momento può avere un unico responsabile.
Visto che non ho la struttura del db a disposizione, non posso farti la query ma l'idea è questa:
select campi che vuoi visualizzare
from tabelle legate in modo corretto
where data_inizio < = data inserita dall'utente AND (data_fine > = data inserita dall'utente OR data_fine is null)
Se hai capito l'idea fai delle prove e nel caso avessi problemi posta la struttura del db, il codice e l'errore