Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    ricercare in un intervallo di date

    ciao, devo creare una stringa sql che mi ricerchi alcuni record nel database secondo un data intervallo di date che ins l'utente. la data nel db mysql è salvata come americana, es: 20070728

    data dal: 20070811
    data al: 20070820

    i miei dati hanno sia una data di inizio che di fine, possibili record:

    inizio: 20070801 fine: 20070813 --> record da prendere;
    inizio: 20070812 fine: 20070814 --> record da prendere;
    inizio: 20070819 fine: 20070831 --> record da prendere;
    inizio: 20070601 fine: 20070831 --> record da prendere;

    inizio: 20070801 fine: 20070803--> record da NON prendere;
    inizio: 20070821 fine: 20071003--> record da NON prendere;


    come posso trovare una soluzione?
    es:


    WHERE
    (data_inizio >= data_dal AND data_inizio <= data_al) OR

    (data_fine >= data_dal AND data_fine <= data_al) OR

    (data_inizio <= data_dal AND data_fine >= data_al)


    così è giusto?

  2. #2
    ciao,
    inizio: 20070801 fine: 20070813 --> record da prendere;
    inizio: 20070801 fine: 20070803--> record da NON prendere;
    le date fra il 20070801 e il 20070813 sono contenute sia negli intervalli da prendere sia in quelli da non prendere... come vuoi che la selezione si comporti??

  3. #3
    ciao, non capisco la tua considerazione.

    se voglio sapere se in questo intervallo c'è qualche attività
    data dal: 20070808
    data al: 20070820

    sicuramente una attività che è iniziata il 20070801 e finirà il 20070813 è da mostrare, mentre una attività che iniziata 20070801 e già finita 20070803 NON è da mostrare.

    se una è iniziata il 20070606 e finirà il 20080831 è da mostrare.


    spero sia chiaro



    grazie ciao

  4. #4
    Utente di HTML.it
    Registrato dal
    Aug 2002
    Messaggi
    8,013
    Non basta un:

    codice:
    SELECT * FROM tabella WHERE (inizio >= $tuo_inzio_attivita) AND (fine >= $tuo_fine_attivita)
    con inizio e fine campi della tabella e $tuo_inzio_attivita, $tuo_fine_attivita le cose che contro cui vuoi fare il controllo.
    <´¯)(¯`¤._)(¯`»ANDREA«´¯)(_.¤´¯)(¯`>
    "The answer to your question is: welcome to tomorrow"

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.