Visualizzazione dei risultati da 1 a 8 su 8

Discussione: cercare per mese

  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    281

    cercare per mese

    Ho una tabella con delle date di inizio e fine nel formato
    anno-mese-giorno

    Come strutturo la query per cercare gli appuntamenti del mese ad esempio Gennaio 2005 ?

    Questa non funziona:

    SELECT inizio,fine FROM `mostre_eventi` where '2005-01-01' BETWEEN inizio AND fine

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    281
    con la clausola
    MONTH(\'2005-04-02\') BETWEEN MONTH(inizio) AND MONTH(fine)

    seleziono per mese ma non tengo conto dell'anno
    Come inserisco anche l'anno ?

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    1,141
    Prova così:
    codice:
    SELECT inizio,fine FROM `mostre_eventi` where campo_data BETWEEN '2005-01-01' AND '2005-01-31'
    ciao

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    281
    no questa non funziona, gli eventi a cavallo dell'anno non li pesca
    Originariamente inviato da alspam
    con la clausola
    MONTH(\'2005-04-02\') BETWEEN MONTH(inizio) AND MONTH(fine)

    seleziono per mese ma non tengo conto dell'anno
    Come inserisco anche l'anno ?

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    281
    Ma io ho due campi !

    data_inizio evento
    data_fine evento

    possono essere anche a cavallo dell'anno.


    Devo estrarre gli eventi secondo la logica:
    "eventi di marzo 2005"

    "eventi di gennaio 2006"

    cioe' data_inizio e data_fine sono compresi nell'intervallo mese-anno scelto.




    Originariamente inviato da ken84
    Prova così:
    codice:
    SELECT inizio,fine FROM `mostre_eventi` where campo_data BETWEEN '2005-01-01' AND '2005-01-31'
    ciao

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    281
    La mia tabella e' fatta cosi':

    inizio fine
    2004-06-15 2004-07-25
    2004-06-10 2004-07-18
    2004-06-08 2004-07-25
    2004-05-14 2004-07-25
    2004-04-02 2004-06-13
    2004-03-25 2004-10-24
    2004-02-17 2004-05-30
    2004-05-11 2004-05-30
    2004-04-14 2004-05-02
    2004-04-06 2004-04-25
    2004-04-14 2004-04-28
    2004-04-06 2004-04-28
    2004-04-14 2004-04-19
    2004-04-14 2004-04-19
    2001-10-18 2004-03-28
    2004-02-05 2004-03-28
    Cerco una query che dati mese e anno mi estragga le righe in cui la data di inizio e la data di fine comprendono quel mese-anno
    Il BETWEEN non funziona:

    "che data ci metto ?" BETWEEN inizio AND fine

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    281
    cosi' sembra funzionare


    (
    '2003-10'
    BETWEEN inizio
    AND fine
    )
    OR (
    '2003-10' = CONCAT( YEAR( inizio ) , '-', MONTH( inizio ) )
    )

  8. #8
    Utente di HTML.it
    Registrato dal
    Mar 2004
    Messaggi
    281
    Non funziona ancora ! Mi date una mano !
    questa query

    SELECT *
    FROM `mostre_eventi`
    WHERE (
    (
    '2005-9'
    BETWEEN inizio
    AND fine
    )
    )

    mi restituisce la riga con
    inizio fine
    2005-11-30 2006-01-30

    Perche' ???

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 © 2024 vBulletin Solutions, Inc. All rights reserved.