113 messaggi dal 23 aprile 2002
Ciao a tutti,
ho un piccolo problemino...

devo estrarre dei dati da un db in base al mese corrente. Il mio problema sta nella condizione WHERE, cosa devo fare per estrarre i dati in base al mese corrente, avendo una data di tipo gg/mm/aaaa? Il campo con la data si chiamo 'data'.

strSQL = "SELECT clickcount, data FROM tblClick WHERE data ...

Ciao e grazie ;-)



407 messaggi dal 08 maggio 2003
coldmind ha scritto:
Ciao a tutti,
ho un piccolo problemino...

devo estrarre dei dati da un db in base al mese corrente. Il mio problema sta nella condizione WHERE, cosa devo fare per estrarre i dati in base al mese corrente, avendo una data di tipo gg/mm/aaaa? Il campo con la data si chiamo 'data'.

strSQL = "SELECT clickcount, data FROM tblClick WHERE data ...

Ciao e grazie ;-)




Allora seguimi io l ho risolto cosi

<%:
'dichiari la variabile data di oggi
dataOdierna = Date()
' estrai il mese
meseCorrente = Month(dataOdierna)
'estrai i dati dal DB
strSQL = "SELECT clickcount, data FROM tblClick"
set rs = cn.execute(strSQL)
' adesso se la data è compresa nel mese corrente viene visualizzata insieme al clickcount altrimenti viene saltata
Do until rs.eof
dataEstratta = rs("data")
meseDataEstratta = Month(dataEstratta)
if meseDataEstratta = meseCorrente then
response.write rs("clickcount") & "&nbsp;" & rs("data")
else
'non fare niente
end if
rs.movenext
loop
%>

fammi sapere se funge.
Ciao.
113 messaggi dal 23 aprile 2002
Ciao ancio,
non l'ho ancora provata, ma la logica c'è! Non avevo proprio pensato a questa soluzione!!!

Grazie mille, ora la faccio e se funziona (ma credo di si) te lo posto.

Ciao ;-)
2.584 messaggi dal 14 maggio 2001
Che Db usi?

puoi fare in modo di trovarti a codice il primo giorno del mese interessato e l'ultimo giorno e poi comporre una stringa Sql del tipo:

strSQL = "SELECT clickcount, data FROM tblClick WHERE data>=#" & PrimoGiorno & "# AND data<=#" & UltimoGiorno & "#"

Ti consiglio questo sistema per evitare di tirarti giù tutti i record del Db e spazzolarli con un loop...
A seconda del Db che usi potrebbero esserci altre funzioni...
113 messaggi dal 23 aprile 2002
Ciao seoman,
grazie per l'aiuto! Il DB in questione è Access. Effettivamente il Do until era una soluzione valida perchè funzionte, ma i tempi di estrazione ed elaborazione non mi convincevano molto.
Comunque è ottima la tua idea.

Grazie di nuovo a tutti e due per l'aiuto!!!
2.584 messaggi dal 14 maggio 2001
Con Access puoi fare anche così:

TuoMeseRecuperato=DatePart("m",TuaVariabileConGiornoDelMese)
strSQL = "SELECT clickcount, data FROM tblClick WHERE Month([data])=" & TuoMeseRecuperato

strSQL = "SELECT clickcount, data FROM tblClick WHERE DatePart("m",[data]=" & TuoMeseRecuperato

Non so a livello di performance cosaè meglio.... teoricamente il >= e il <= perché non lavora su funzioni.
113 messaggi dal 23 aprile 2002
Non sapevo che si potessero usare le funzioni sulle isruzioni SQL, altrimenti avrei provato subito ad utilizzare il DatePart.

Ora che lo so, ho risolto anche altri problemi!

Ciao ;-)

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.