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

    [mysql] selezionare data più recente

    Salve,

    Premetto che la mia conoscenza di SQL è minima, quanto basta per relazionarsi con PHP...
    Ho un campo data (varchar, non date perchè devo salvare nel db soltanto mese e giorno e non tutta la data completa). Quindi nel campo data ci sono dati: gg-mm (es, 2 marzo: 02-03)
    Da PHP devo selezionare tutti i campi che hanno una data "maggiore" di quella salvata, ordinando dal più recente al meno.

    Cioè, se oggi è il 19-04, mi deve selezionare tutti quelli con la data vicino (19-04, 20-04, etc...) fino ad un massimo di 3 giorni dopo (22-04). Dato che, ribadisco, la mia conoscenza di sql si limita select // from // where //, piuttosto che fare un lavoro enorme in php per questa cosa, mi chiedevo se esistesse qualche metodo di ricerca in sql che, per lo meno, mi desse una piccola mano.

    Grazie

  2. #2
    il lavoro sarebbe enormemente più semplice se le date fossero in formato data non puoi cambiare il tipo?

  3. #3
    Lo ritenevo inutile dato che il sistema è riferito all'anno in corso. Quindi avevo pensato di appesantire meno il db salvando meno dati. Qui gli esperti siete voi, quindi vi lascio la parola.

  4. #4
    salvo venire poi smentito dai calcoli accurati di franzauker direi che non rischi di appesantire chissà quanto il tuo db. vai di data

  5. #5
    Premettendo che è meglio utilizzare DATE perchè ha molte funzioni molto comode sulle date, potresti comunque provare a fare qualcosa del genere (prova perché non ho testato):
    Codice PHP:
    SELECT SPLIT_STR(data' '1) as giorno,
           
    SPLIT_STR(data' '2) as mese
    FROM   Tabella
    WHERE mese 
    $mese AND (giorno $giorno+AND giorno < ($giorno+3)) 
    Ovviamente nelle variabili $mese e $giorno avrai il mese e il giorno che l'utente ha selezionato.
    Sono disponibile per realizzare lavori su commissione.

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.