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

    funzioni dentro query mysql

    La seguente query mi serve per selezionare gli eventi che hanno una data inferiore alla attuale di massimo 7 giorni .
    Ma nn mi restituisce nessun risultato .. cosa ho sbagliato?
    La Tabella "ultimieventi" ha il campo "dataserata" di tipo DATE

    $d=date('Ymd');
    $sql = "SELECT * FROM ultimieventi WHERE (".intval((strtotime($d) - strtotime("dataserata")) / 86400).")<=7";

    $evento = sql_execute($sql);

  2. #2
    codice:
    $sql = "SELECT * FROM ultimieventi 
    WHERE dataserata < CURDATE() - INTERVAL 7 DAY";

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

  3. #3
    grazie piero.mac cmq penso che che l'espressione sia con la disuguaglianza opposta .. o sbaglio ??

    $sql = "SELECT * FROM ultimieventi
    WHERE dataserata > CURDATE() - INTERVAL 7 DAY";
    ^

  4. #4
    Magari ho interpretato male....
    La seguente query mi serve per selezionare gli eventi che hanno una data inferiore alla attuale di massimo 7 giorni
    Quindi vuoi le date a partire da (oggi - 7) ad oggi. mentre io avevo interpretato data inferiore a (oggi - 7).

    Se e' cosi devi mettere anche il limite superiore per impedire la raccolta di date future, ammesso che ci siano.
    codice:
    $sql = "SELECT * FROM ultimieventi 
    WHERE dataserata between CURDATE() - INTERVAL 7 DAY AND CURDATE()";
    oppure come hai fatto tu, se sei certo che non possano esserci date future.



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

  5. #5
    si infatti se ci sono date future seleziona anke quelle .. ma poichè le date vegono aggiunte al database solo quando un evento si è realizzato sicuramente la data nn sarà mai superiore a quella dell'inserimento nel database .. o forse mi conviene fare ugualmente il controllo?
    correggimi se sbaglio .. grazie

  6. #6
    Originariamente inviato da claud324
    si infatti se ci sono date future seleziona anke quelle .. ma poichè le date vegono aggiunte al database solo quando un evento si è realizzato sicuramente la data nn sarà mai superiore a quella dell'inserimento nel database .. o forse mi conviene fare ugualmente il controllo?
    correggimi se sbaglio .. grazie
    se controlli il periodo esatto, magari eviti di doverlo fare dopo. Se ti serve esattamente "quel" periodo metti un paletto min ed un paletto max (da <-> a). Secondo me e' meglio.


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