Select con un particolare between tra date

martedì 14 ottobre 2008 - 14.34

trinity Profilo | Guru

Abbiamo questa tabella:


Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

supponiamo che inseriamo i seguenti record:

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

Allora io devo creare una select che mi prenda tutti i campi in base ad un criterio di date ossia nel mio programma permetto
al cliente di sceglliere un periodo come in questo esempio 01-08-2008 a 31-08-2008.

ok ora però io deve prendere sia tutti i record che hanno data arrivo che rientra nel periodo indicato ma anche i record che hanno data arrivo diversa ma
data partenza che rientra nel periodo prescelto.

Come posso fare?
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

ale.orma Profilo | Junior Member

>io devo creare una select che mi prenda tutti i campi
>in base ad un criterio di date ossia nel mio programma permetto
>al cliente di sceglliere un periodo come in questo esempio 01-08-2008
>a 31-08-2008.
>
>ok ora però io deve prendere sia tutti i record che hanno data
>arrivo che rientra nel periodo indicato ma anche i record che
>hanno data arrivo diversa ma
>data partenza che rientra nel periodo prescelto.

select * from Archivio_mov_new where dataarrivo between '01/08/2008' and '31/08/2008' or datapartenza between '01/08/2008' and '31/08/2008'

trinity Profilo | Guru

>>io devo creare una select che mi prenda tutti i campi
>>in base ad un criterio di date ossia nel mio programma permetto
>>al cliente di sceglliere un periodo come in questo esempio 01-08-2008
>>a 31-08-2008.
>>
>>ok ora però io deve prendere sia tutti i record che hanno data
>>arrivo che rientra nel periodo indicato ma anche i record che
>>hanno data arrivo diversa ma
>>data partenza che rientra nel periodo prescelto.
>
>select * from Archivio_mov_new
>where dataarrivo between '01/08/2008' and '31/08/2008' or
>datapartenza between '01/08/2008' and '31/08/2008'

ok ma supponiamo che abbiamo anche un record del genere:

Insert Into Archivio_mov_new(codalbergo,codcomalbergo,dataarrivo,datapartenza,statores)Values('4','60033','2008/07/25','2008/09/05','ITALIA')

ed il mio cliente vuole fare una stampa delle nazioni che sono state presenti nell'albergo nel mese di Agosto se vedi l'insert questa esempio ha come data di arrivo luglio e come partenza settembre pertanto è stato presente nel mese di agosto, come posso fare?



Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com

ale.orma Profilo | Junior Member

>ok ma supponiamo che abbiamo anche un record del genere:
>
>Insert Into Archivio_mov_new(codalbergo,codcomalbergo,dataarrivo,datapartenza,statores)Values('4','60033','2008/07/25','2008/09/05','ITALIA')
>
>ed il mio cliente vuole fare una stampa delle nazioni che sono
>state presenti nell'albergo nel mese di Agosto se vedi l'insert
>questa esempio ha come data di arrivo luglio e come partenza
>settembre pertanto è stato presente nel mese di agosto, come
>posso fare?
select * from Archivio_mov_new where (dataarrivo between '01/08/2008' and '31/08/2008' or datapartenza between '01/08/2008' and '31/08/2008') or (dataarrivo <'01/08/2008' and datapartenza>'31/08/2008')

trinity Profilo | Guru

dai controlli mi prende record errati se faccio come dici tu
Cirillo Fabio
www.wondernet.biz
fabio@wondernet.biz
http://blogs.dotnethell.it/fabiocirillo/
http://wnetsoftware.blogspot.com
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5