|
|
|
![]() |
|
Strumenti |
![]() |
#1 |
Junior Member
Iscritto dal: Nov 2001
Messaggi: 21
|
Sql
Salve a tutti. Qualcuno mi potrebbe scrivere la stringa SQL per visualizzare i record compresi tra due date (ex: dal 01/01/2002 al 01/02/2002)? O come posso raggiungere lo stesso risultato in un altro modo? Grazie
|
![]() |
![]() |
![]() |
#2 |
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Niente di + semplice
![]() SELECT TUA_DATA FROM TUA_TABELLA WHERE TUA_DATA in ( TO_DATE('01/01/2002','dd/mm/yyyy'),TO_DATE('01/03/2002','dd/mm/yyyy')) o nel formato data che vuoi se hai anche ad es i minuti e i secondi. |
![]() |
![]() |
![]() |
#3 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
cn73 : la IN non indica un intervallo, ma è BETWEEN che prende un intervallo...
IN serve per prendere quella data se è uno di quei valori specificati all'interno della IN... In Access si fa così : SELECT * FROM Tabella WHERE Data >= DateValue('11/09/2001') And Data <= DateValue('11/09/2002'); o così (sono equivalenti): SELECT * FROM Tabella WHERE Data BETWEEN DateValue('10/09/2001') And DateValue('11/09/2002'); |
![]() |
![]() |
![]() |
#4 |
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
OPS... giusta osservazione
![]() SELECT TUA_DATA FROM TUA_TABELLA WHERE TUA_DATA BETWEEN TO_DATE('01/01/2002','dd/mm/yyyy') AND TO_DATE('01/03/2002','dd/mm/yyyy') LA funzione dataValue è propria di ACCESS (O VBA), non appartiene alla sintassi SQL. Su un db oracle la tua query darebbe errore... |
![]() |
![]() |
![]() |
#5 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Lo so...ma anche TO_DATE è proprietaria
![]() |
![]() |
![]() |
![]() |
#6 |
Junior Member
Iscritto dal: Nov 2001
Messaggi: 21
|
Molto chiari e vi ringrazio...vado a provarla. Mi risolvereste un altro problemino? Non riesco a collegare due campi data (sempre in Access). Il quesito l'ho postato in un'altra discussione con il titolo "Collegare due campi DATA". Grazie1000.
|
![]() |
![]() |
![]() |
#7 | |
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#8 | |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Quote:
Soitamente queste funzioni di formattazione/conversione delle date sono proprietarie per ogni DBMS... |
|
![]() |
![]() |
![]() |
#9 |
Junior Member
Iscritto dal: Nov 2001
Messaggi: 21
|
Non mi funziona!
SELECT Sum([tabella].[nomecampo]) AS [Somma nomecampo]
FROM tabella WHERE [Data] Between Datevalue('01/08/2002') And Datevalue('15/08/2002'); Perché mi comprende, per esempio, anche il 07/09/2002? Considera solo il giorno?!!? |
![]() |
![]() |
![]() |
#10 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Ma sei sicuro ?!?!? Ho provato con i tuoi stessi limiti mettendo anche 07/09/2002 nel db di prova e ame mi ritorna solo quelli compresi nell'intervallo...
Ma il campo sei sicuro che sia di tio Data/ora ? |
![]() |
![]() |
![]() |
#11 |
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
TO_DATE è una funzione SQL...come TO_CHAR ad es...come al solito Microsoft deve fare di testa sua
![]() Starno che non funzioni quella query ![]() |
![]() |
![]() |
![]() |
#12 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Sicuro che sia SQL standard ? Magari è SQL di Oracle...
|
![]() |
![]() |
![]() |
#13 |
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Sicuro...mmm...sul mio manuale di SQL standard è così. Mi sembra strano che SQL standard non contempli funzioni di formattazione delle date, essendo un tipo base.
|
![]() |
![]() |
![]() |
#14 |
Senior Member
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
|
Ho fatto una ricerca, ma l'ho sempre trovato associato ad Oracle o PostgreSQL...
Vabbè...cambia poco ![]() |
![]() |
![]() |
![]() |
#15 | |
Senior Member
Iscritto dal: Jul 1999
Città: Torino
Messaggi: 2221
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 05:47.