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
Select da codice
mercoledì 29 ottobre 2008 - 15.32
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
squilibrio
Profilo
| Expert
527
messaggi | Data Invio:
mer 29 ott 2008 - 15:32
Ciao a tutti devo gestire una query senza utilizzare i parametri
non capisco cosa sbaglio nella data
if ((DataInizio != "") && (DataFine != ""))
sb.AppendFormat(" WHERE (DataContratto >='#{0}#' AND DataContratto <='#{1}#')", DataInizio, DataFine);
in questo modo mi da errore nella query
e in questo modo
if ((DataInizio != "") && (DataFine != ""))
sb.AppendFormat(" WHERE (DataContratto >=#{0}# AND DataContratto <=#{1}#)", DataInizio, DataFine);
non ho errori ma vengono recuperati tutti gli elementi, senza filtro per data
cosa sbaglio?
Grazie
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
mer 29 ott 2008 - 15:37
>cosa sbaglio?
A non dirci con quale DBMS stai lavorando e senza un esempio completo per riprodurre l'anomalia che riscontri e di cui non hai detto niente.
Tra l'altro in cosa differiscono le due righe che hai postato?
>Grazie
Prego.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
alx_81
Profilo
| Guru
8.814
messaggi | Data Invio:
mer 29 ott 2008 - 15:40
>Ciao a tutti devo gestire una query senza utilizzare i parametri
Ciao!
Prima cosa, è access? O un altro RDBMS?
>in questo modo mi da errore nella query
Questo perchè le apici non ci vogliono..
>cosa sbaglio?
Facci sapere se è access o altro..
>Grazie
di nulla!
--
Alessandro Alpi | SQL Server MVP
http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
http://italy.mvps.org
squilibrio
Profilo
| Expert
527
messaggi | Data Invio:
mer 29 ott 2008 - 18:18
Scusate avete ragione!! MS Access
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
mer 29 ott 2008 - 18:19
>Scusate avete ragione!! MS Access
Con Access puoi utilizzare il formato #MM/DD/YYYY# senza apici.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
squilibrio
Profilo
| Expert
527
messaggi | Data Invio:
mer 29 ott 2008 - 20:49
Che infatti è esattamente quello che ho inserito io ma prende "tutto" il periodo .... quindi senza considerare le date
Per quale motivo?
squilibrio
Profilo
| Expert
527
messaggi | Data Invio:
mer 29 ott 2008 - 20:54
SELECT Anag_Comuni.CodiceComune, Anag_Comuni.Comune, Sum(Rel_AgentiAree.Valore) AS Gruppo, Sum(Rel_AgentiAree_1.Valore) AS Azione, Sum(Rel_AgentiAree_2.Valore) AS Tariffa, Sum(Rel_AgentiAree.Valore)+Sum(Rel_AgentiAree_1.Valore)+Sum(Rel_AgentiAree_2.Valore) AS Totale, Count(*) AS Conteggio FROM ((((((Contratti INNER JOIN Anag_ContrattoTariffe ON Contratti.CodiceTariffa=Anag_ContrattoTariffe.CodiceTariffa) INNER JOIN Anag_ContrattoAzioni ON Contratti.CodiceAzione=Anag_ContrattoAzioni.CodiceAzione) INNER JOIN Anag_ContrattoGruppi ON Contratti.CodiceGruppoCliente=Anag_ContrattoGruppi.CodiceGruppo) INNER JOIN Anag_Comuni ON Contratti.CodiceComune=Anag_Comuni.CodiceIstat) INNER JOIN Rel_AgentiAree ON (Contratti.CodiceAgente=Rel_AgentiAree.CodiceAgente) AND (Anag_ContrattoGruppi.CodiceGruppo=Rel_AgentiAree.CodiceArea)) INNER JOIN Rel_AgentiAree AS Rel_AgentiAree_1 ON (Contratti.CodiceAgente=Rel_AgentiAree_1.CodiceAgente) AND (Anag_ContrattoAzioni.CodiceAzione=Rel_AgentiAree_1.CodiceArea)) INNER JOIN Rel_AgentiAree AS Rel_AgentiAree_2 ON (Contratti.CodiceAgente=Rel_AgentiAree_2.CodiceAgente) AND (Anag_ContrattoTariffe.CodiceTariffa=Rel_AgentiAree_2.CodiceArea) WHERE (DataContratto >=#01/10/2008# AND DataContratto <=#29/10/2008#) AND (Contratti.CodiceComune = '017165') GROUP BY Anag_Comuni.CodiceComune, Anag_Comuni.Comune ORDER BY Comune
Non prende solo gli elementi nel range 01/10 - 29/10 ma tutti gli i records
Grazie ancora!
squilibrio
Profilo
| Expert
527
messaggi | Data Invio:
mer 29 ott 2008 - 21:02
Scusate se ri-posto..... ho fatto un po' di prove
ed invertendo la data 10/01/2008 - 29/01/2008
perchè con il formato UK è corretta??
lbenaglia
Profilo
| Guru
5.625
messaggi | Data Invio:
mer 29 ott 2008 - 21:48
>Scusate se ri-posto..... ho fatto un po' di prove
>
>ed invertendo la data 10/01/2008 - 29/01/2008
>
>perchè con il formato UK è corretta??
Infatti ti avevo suggerito proprio il formato #MM/DD/YYYY#
Perché è corretto? Perché è il formato utilizzato da Access per le date indipendentemente dalle Regional Options impostate sulla macchina.
Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
squilibrio
Profilo
| Expert
527
messaggi | Data Invio:
gio 30 ott 2008 - 11:00
ahhh non avevo notato che nella tua risposta mi avevi consigliato di invertire MM e DD .... ora cmq è OK!
Grazie !!
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 !