Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di buba88
    Registrato dal
    Feb 2004
    Messaggi
    538

    [ASP] - Confonto tra date

    Come posso fare il confronto tra due date ina query???

    Per spiegarmi meglio, in una tabella ho 3 campi: giorno,mese e anno.
    ho bisogno di estrarre tutti i record che hanno una data uguale o superiore a una data specficata in una variabile.

    Come potrei fare?

  2. #2
    Utente di HTML.it L'avatar di marco_c
    Registrato dal
    Jun 2004
    Messaggi
    1,047
    ti conviene modificare il DB e avere un unico campo DATA di tipo data. piuttosto che spezzare giorno, mese, anno. Con un campo data i confronti sono immediati, come un confronto tra numeri
    Gli uomini si dividono in due categorie: i geni e quelli che dicono di esserlo. Io sono un genio.

  3. #3
    Utente di HTML.it L'avatar di buba88
    Registrato dal
    Feb 2004
    Messaggi
    538
    e quindi una volta che ho un campo di tipo data, nella query come lo faccio il confronto? Cosi va bene?:

    codice:
    data_confr = "4/1/2005"
    
    query = "SELECT * FROM tabella WHERE " & data_confr & " > data"

  4. #4
    Il confronto in SQL va fatto con campo confronto valore, quindi hai invertito la sintassi.

    Se il db è MySQl ricorda che il valore della data va delimintato con ', se è Access con #.

    Infine le query con data vanno sempre nel formato inglese o ISO, non italiano.

  5. #5
    Utente di HTML.it L'avatar di buba88
    Registrato dal
    Feb 2004
    Messaggi
    538
    nn ho capito l ultima frase che hai detto:

    Infine le query con data vanno sempre nel formato inglese o ISO, non italiano


    Che vuoi dire??
    Come devo modificare la mia query??

  6. #6
    Vuol dire nelle query al db la data va espressa nel formato

    codice:
    mm/dd/yyyy (inglese) o yyyy/mm/dd (iso)

  7. #7
    Utente di HTML.it L'avatar di buba88
    Registrato dal
    Feb 2004
    Messaggi
    538
    beh ce l ho fatta anche usando il formato italiano, prima nn funzionava perchè nn avevo usato gli #

    ecco la query che ho usato, per estrarre tutti i record tra due date:

    codice:
    data_sql = " data >= #" & sdata & "# AND data <= #" & fdata & "#
    query = "SELECT * FROM atti WHERE" & data_sql

  8. #8
    Originariamente inviato da buba88
    beh ce l ho fatta anche usando il formato italiano, prima nn funzionava perchè nn avevo usato gli #

    ecco la query che ho usato, per estrarre tutti i record tra due date:

    codice:
    data_sql = " data >= #" & sdata & "# AND data <= #" & fdata & "#
    query = "SELECT * FROM atti WHERE" & data_sql
    Leggi la firma.
    Il fatto che ti funzioni ora non vuol dire che sia corretto.

    Non mi stupirei se ti funzionasse a random. Meglio non sfidare il database e fare le cose corrette.
    Taglia e costruisci la data nel formato corretto.

  9. #9
    Utente di HTML.it L'avatar di buba88
    Registrato dal
    Feb 2004
    Messaggi
    538
    ok metto la data nel formato inglese

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.