Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Trinità76
    Registrato dal
    Jan 2002
    Messaggi
    1,439

    [php-MySql] Consiglio su come impostare un campo di data

    Come mi consigliate di impostare un campo data di questo genere in mysql?
    I dati all'interno possono essere vari: ad es.:

    febbraio/marzo 2005
    11/11/2004
    2005
    11/2005
    null

    Ossia, purtroppo, le date che ho a disposizione possono essere o nulle, o giorno/mese/anno, o mese/anno, o anno, o fascia_di_mesi/anno

    Ovviamente un campo DATETIME non può andar bene, ma in qualche modo dovrei cercare di dare un'ordine a queste date, quindi avevo pensaro a tre VARCHAR in cui mettere g/m/a e poi controllarle da php... ma come gestisco le date con mesi doppi? :master:
    わさび

  2. #2
    Se non hai altre possibilita' per inserire la data vanno bene anche tre campi giorno, mese anno.... purche' siano convertiti in valore numerico. Poi per estrarre o fare comparazioni puoi usare CONCAT...

    Esempio per estrarre una data in formato dd/mm/yyyy ma compararla con la data di oggi in formato yyyy-mm-dd
    codice:
    SELECT *, CONCAT(giorno,'/',mese,'/',anno) as data
    FROM tabella
    WHERE CONCAT(anno,'-',mese,'-'giorno) = CURDATE()

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

  3. #3
    Utente di HTML.it L'avatar di Trinità76
    Registrato dal
    Jan 2002
    Messaggi
    1,439
    Ciao piero.mac,
    ma che succede quando ci sono date nulle oppure mancano i giorni o i mesi?
    わさび

  4. #4
    [supersaibal]Originariamente inviato da Trinità76
    Ciao piero.mac,
    ma che succede quando ci sono date nulle oppure mancano i giorni o i mesi? [/supersaibal]
    Se non c'e' ... non c'e'. In altre parole se manca uno dei tre dati (giorno - mese - anno) la data non e' valida.... Puoi metterla in un campo testo da usare cosi' come' ma non per fare ricerche che risulterebbero inconsistenti.

    Cerca do normalizzare tu la data che ricevi prima di metterla in un db.


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

  5. #5
    Utente di HTML.it L'avatar di Trinità76
    Registrato dal
    Jan 2002
    Messaggi
    1,439
    [supersaibal]Originariamente inviato da piero.mac
    Se non c'e' ... non c'e'. In altre parole se manca uno dei tre dati (giorno - mese - anno) la data non e' valida.... Puoi metterla in un campo testo da usare cosi' come' ma non per fare ricerche che risulterebbero inconsistenti.

    Cerca do normalizzare tu la data che ricevi prima di metterla in un db.

    [/supersaibal]
    ...però potrei recuperare in php le date con valori incompleti, metterli in un array e farli uscire alla fine; mettere in un altro array gli id degli articoli contenenti una data in formato corretto e poi farglieli ordinare da mysql... lo so che mi sto però purtroppo ho dei dati incompleti e non posso farci niente

    Grazie comunque per le info
    わさび

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.