Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
SQL Server 2000/2005/2008, Express, Access, MySQL, Oracle
MS Access 2003 - Query per ricerca data
sabato 19 dicembre 2009 - 20.19
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
fabiotes
Profilo
| Newbie
2
messaggi | Data Invio:
sab 19 dic 2009 - 20:19
Ciao a tutti, ho la necessità di estrarre da un DB, dei clienti che abbiano la data di nascita in un determinato periodo di tempo (da --> a), di cui però a me interessa solo il giorno ed il mese.
Mi spiego meglio, devo estrarre delle date di compleanno e quindi della data di nascita per intero, a me serve solo il giorno ed il mese. Ho creato una query con la clausola "format" e l'ho legata ad una maschera da cui richiedo i dati (DataInizioCOM e DataFineCOM).
Il problema che mi si presenta è che mi estrae in ogni caso tutti i record, senza rispettare l'intervallo di tempo da me richiesto. Devo precisare che il campo "Data_Nascita" è nel formato "99/99/99", mentre i due campi delle date della maschera sono nel formatao "99/99".
Allego la query così come descritta:
SELECT Clienti.*
FROM Clienti
WHERE format(Clienti.Data_Nascita,"dd/mm") Between (Forms![Anteprima Compleanni]!DataInizioCOM) And (Forms![Anteprima Compleanni]!DataFineCOM);
Un grazie anticipato a tutti
Jok83
Profilo
| Junior Member
139
messaggi | Data Invio:
mar 22 dic 2009 - 09:28
Ciao credo dipenda proprio dalla format (ma su SQL non esiste non so su access) devi metterla anche nelle date nel beetwen:
WHERE format(Clienti.Data_Nascita,"dd/mm") Between (format(Forms![Anteprima Compleanni]!DataInizioCOM,"dd/mm")) And (format(Forms![Anteprima Compleanni]!DataFineCOM,"dd/mm"));
fabiotes
Profilo
| Newbie
2
messaggi | Data Invio:
mar 22 dic 2009 - 11:31
Ciao Jok83, in effetti è quello che ho provato inizialmente, ma sembra che la clausola "format", apportata ad un campo di una form, sia irrilevante.
Ho comunque risolto il tutto, utilizzando le clausole "Month" e "Day" e modificando i campi "Data_InizioCOM" e "Data_FineCOM" nel formato data 99/99/99. Allego comunque il formato della query, casomai dovesse servire a qualcun'altro. Nel frattempo ti ringrazio molto per l'aiuto e ti faccio gli auguri di Buon Natale e Felice Anno Nuovo.
Fabio
Query di ricerca (è stata modificata rispetto a quella originale, con degli ulteriori controlli):
WHERE ((Clienti.Data_Nascita) Is Not Null And ((Clienti.Flag_PRN_COM)=0) And ((Clienti.Spedizione)=-1) And ((Clienti.MM_Nascita) Between Month(Forms![Anteprima Compleanni]!DataInizioCOM) And Month(Forms![Anteprima Compleanni]!DataFineCOM) And ((Clienti.DD_Nascita) Between Day(Forms![Anteprima Compleanni]!DataInizioCOM) And Day(Forms![Anteprima Compleanni]!DataFineCOM))))
Torna su
Stanze Forum
Elenco Threads
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 !