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

    Da data di nascita a anni precisi

    Possibile che non sia riuscito a trovare uno script decente che mi restituisca gli anni di una persona avendo a disposizione la sua data di nascita?

    Ricavo la data in formato DATETIME da "SELECT data_nascita FROM utenti".

    Ma non so come sapere quanti anni ha questa persona (in modo preciso tenendo conto degli anni bisestili, mesi ecc..).

    Ho provato ad utilizzare DATEDIFF( NOW( ) , data_nascita ) di MySQL, ma, restituendomi la distanza in giorni, non so per cosa dividere, visto che ogni anno non è composto sempre da 365 giorni...
    Il 90% dei problemi di un pc si trova
    tra la tastiera e la sedia.

  2. #2

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

  3. #3
    perchè salvare la data di nascita in un DATETIME???
    www.gext.it

  4. #4
    Originariamente inviato da tarini
    perchè salvare la data di nascita in un DATETIME???
    gli servira' per l'oroscopo.

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

  5. #5
    l'ora di nascita??? VVoVe: VVoVe: VVoVe:
    www.gext.it

  6. #6
    Originariamente inviato da tarini
    l'ora di nascita??? VVoVe: VVoVe: VVoVe:
    e certo che si... l'ascendente, l'astro vagante... ecc.... ma siamo [ot] ... saran cose sue, giusto?

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

  7. #7
    scusate, ho salvato la data in DATE, non DATETIME, mia svista

    Cmq ho trovato un metodo efficace:

    1.Prendo l'anno attuale e sottraggo l'anno di nascita dell'iscritto
    2.Se il mese e il giorno di nascita dell'iscritto devono ancora avvenire quest'anno, allora sottraggo 1 unità al risultato della sottrazione precedente.

    Come fare questo direttamente in una query di MySQL?
    Il 90% dei problemi di un pc si trova
    tra la tastiera e la sedia.

  8. #8
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    codice:
    select ...,(YEAR(CURDATE())-YEAR(campo_data)) - (RIGHT(CURDATE(),5) < RIGHT(campo_data,5) ) AS eta
    from tabella

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.