Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Query between access

  1. #1

    qury between access

    Salve a tutti,

    Avrei un problema con una query in access.
    Ho una tabella con una colonna "data" la quale contiene tutti i giorni dell'anno nel seguente formato dd/mm/yyyy.
    Effettuando una query del tipo:
    select * from tabella1 where data between #01/01/2009# and #02/01/2009#
    mi visualizza tutti i giorni del mese di gennaio, quindi dal primo al 31, il primo giorno di febbraio e infine i primi tre giorni di gennaio.
    Non riesco a capire dove sbaglio.
    Dalla query effettuata mi dovrebbe visualizzare solo i primi due giorni di gennaio, invece no.

    In attesa di suggerimenti, si ringrazia

    Saluti

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Devi invertire giorno e mese nella query. Quindi per i record tra l'1 e il 2 gennaio 2009

    codice:
    SELECT *
    FROM Tabella
    where data between #01/01/2009# and #01/02/2009#
    edit. Se non vuoi invertire mese e giorno puoi usare la funzione format in questo modo

    codice:
    SELECT *
    FROM Tabella
    WHERE data between format(#01/01/2009#,"mm/dd/yyyy") and format(#02/01/2009#,"mm/dd/yyyy");

  3. #3
    ti ringrazio per il suggerimento. Proverò quanto prima possibile e ti farò sapere.

  4. #4
    Ho provato in entrambi i modi ma il risultato non cambia.
    Praticamente usando la query che mi hai scritto mi visualizza l'intervallo dei giorni desiderati, cioè il primo e il secondo giorno del primo mese, ma poi mi visualizza anche il primo giorno dei restanti mesi.
    Non penso sia normale.
    Inoltre ho riscontrato che se metto come intervallo il 13/11/2009 fino al 15/11/2009 la query funziona.
    Suggerimenti?

    Come sempre si ringrazia.

  5. #5
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,923
    Ti ho caricato una piccola tabellina di prova con le query. Testale tu stesso. Se vuoi aggiungi pure qualche data e modifica gli intervalli secondo la sintassi di quelle già esistenti.

    http://myfreefilehosting.com/f/4c9211e18e_0.19MB

    Il campo l'hai definito di tipo data?
    Mi sembra strano che non ti funzionino.

  6. #6
    ciao,
    scusa se risp adesso. Ho risolto il problema applicando la query che mi avevi descritto la volta scorsa.
    L'anomalia era nella tabella sulla quale applicavo la query che avevi dei campi duplicati e tanti altri che non si aggiornavano. Non mi sono accorto subito dello sbaglio perchè tutto ciò lo facevo da vb6 e il database non era stato creato da me.
    Cmq grazie per la collaborazione.
    Saluti.

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.