Visualizzazione dei risultati da 1 a 7 su 7

Discussione: Aiuto con una query !

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617

    Aiuto con una query !

    Questa è la query:

    codice:
    SELECT tuoiCampi 
        FROM tuaTabella
        WHERE start < NOW() AND (stop > NOW() OR isnull(stop))
    In pratica prendo i dati che hanno start minore della data attuale e stop superiore alla data attuale o null, questo però lascia i record che hanno la data identica a quella attuale.

    Ho provato a riscrivere la query cos':

    codice:
    SELECT tuoiCampi 
        FROM tuaTabella
        WHERE start <= NOW() AND (stop >= NOW() OR isnull(stop))
    Ma continua a funzionare come prima, potreste darmi una manina?

    Grazie in anticipo !

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2013
    Messaggi
    287
    Quote Originariamente inviata da Madsex Visualizza il messaggio
    Questa è la query:

    codice:
    SELECT tuoiCampi 
        FROM tuaTabella
        WHERE start < NOW() AND (stop > NOW() OR isnull(stop))
    In pratica prendo i dati che hanno start minore della data attuale e stop superiore alla data attuale o null, questo però lascia i record che hanno la data identica a quella attuale.

    Ho provato a riscrivere la query cos':

    codice:
    SELECT tuoiCampi 
        FROM tuaTabella
        WHERE start <= NOW() AND (stop >= NOW() OR isnull(stop))
    Ma continua a funzionare come prima, potreste darmi una manina?

    Grazie in anticipo !


    (start <= NOW() AND stop >= NOW()) OR isnull(stop)
    Non siate in ansia per la vostra vita; Guardate gli uccelli del cielo: non seminano, non mietono, non raccolgono in granai, e il Padre vostro celeste li nutre. Non valete voi molto più di loro? Cercate prima il regno e la giustizia di Dio, e tutte le altre cose vi saranno date in più.

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2009
    Messaggi
    617
    Grazie ma non va !
    In pratica se le due date start e stop sono:

    start = 12/07/2015;
    stop = 13/07/2015

    Non prende il record, se stop è 14/07/2015 allora va!

    Ideee?

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2013
    Messaggi
    287
    Non siate in ansia per la vostra vita; Guardate gli uccelli del cielo: non seminano, non mietono, non raccolgono in granai, e il Padre vostro celeste li nutre. Non valete voi molto più di loro? Cercate prima il regno e la giustizia di Dio, e tutte le altre cose vi saranno date in più.

  5. #5
    sperando che start e stop siano due colonne in formato data

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2013
    Messaggi
    287
    Quote Originariamente inviata da optime Visualizza il messaggio
    sperando che start e stop siano due colonne in formato data
    speriamo
    Non siate in ansia per la vostra vita; Guardate gli uccelli del cielo: non seminano, non mietono, non raccolgono in granai, e il Padre vostro celeste li nutre. Non valete voi molto più di loro? Cercate prima il regno e la giustizia di Dio, e tutte le altre cose vi saranno date in più.

  7. #7
    Devi usare CURDATE() e non NOW() perche' quest'ultimo considera anche ore minuti secondi.

    in mancanza delle ore minuti secondi nel campo assume come default 00:00:00 e quindi le tue date diventerebbero

    start = 12/07/2015 00:00:00
    stop = 13/07/2015 00:00:00

    ecco perche' NOW() non ti prenderebbe mai il giorno 13
    Ultima modifica di piero.mac; 13-07-2015 a 14:20

    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

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.