PDA

Bekijk Volledige Versie : Leeftijd uitrekenen in MySQL?



PanMan
26/12/02, 15:46
Hoi!
Ik zie een beetje door de bomen het bos niet meer.
Wat is de simpelste marnier om in MySQL de leeftijd van een persoon
uit te rekenen? Ik heb in de DB een dag, maand en jaar staan (jah, ik
weet dat dit ook in 1 datetime veld kan, maar ik heb dit project niet
opgezet, en om het nu te gaan ombouwen is gewoon niet rendabel).
Nu wil ik 2 dingen: de leeftijd van een persoon, als ik hem select.
Dit heb ik inmiddels in php opgelost, maar moet volgens mij ook simpel
kunnen in MySQL.
En, en dat moet wel in mysql: personen selecteren op basis van hun
leeftijd. (Toon alle personen die tussen de 25 en 35 zijn).
nu zijn er een aantal mysql datum functies, maar ik kom er niet echt
uit wat nou de beste/simpelste marnier is om in een query een leeftijd
uit te rekenen.
Iemand enig idee?
Thnx,
PanMan.
--
Have you ever had a dream, that you were so sure it was real?
What if you were unable to wake from that dream?
How would you know the difference between the dream world,
and the real world? - The Matrix.

Ronald Paul
27/12/02, 01:52
use.the@reply.to.adress (PanMan) schreef:

>En, en dat moet wel in mysql: personen selecteren op basis van hun
>leeftijd. (Toon alle personen die tussen de 25 en 35 zijn).
>nu zijn er een aantal mysql datum functies, maar ik kom er niet echt
>uit wat nou de beste/simpelste marnier is om in een query een leeftijd
>uit te rekenen.
>Iemand enig idee?

Zoiets?

SELECT
YEAR(
FROM_DAYS(
TO_DAYS(
CURDATE()
) -
TO_DAYS(
CONCAT(jaar, maand, dag)
)
)
) AS leeftijd
FROM tabel
HAVING leeftijd > 25 AND leeftijd < 35;

--
Groet, Ronald

PanMan
29/12/02, 02:17
On Fri, 27 Dec 2002 01:52:47 +0100, Ronald Paul <usenet@rcpaul.nl>
grabbed a keybord and dumped this in nl.internet.www.server-side :

>use.the@reply.to.adress (PanMan) schreef:
>
>>En, en dat moet wel in mysql: personen selecteren op basis van hun
>>leeftijd. (Toon alle personen die tussen de 25 en 35 zijn).
>>nu zijn er een aantal mysql datum functies, maar ik kom er niet echt
>>uit wat nou de beste/simpelste marnier is om in een query een leeftijd
>>uit te rekenen.
>>Iemand enig idee?
>
>Zoiets?
>
>SELECT
> YEAR(
> FROM_DAYS(
> TO_DAYS(
> CURDATE()
> ) -
> TO_DAYS(
> CONCAT(jaar, maand, dag)
> )
> )
> ) AS leeftijd
>FROM tabel
>HAVING leeftijd > 25 AND leeftijd < 35;

Thnx, werkt perfect!
Greetz,
PanMan.
--
Have you ever had a dream, that you were so sure it was real?
What if you were unable to wake from that dream?
How would you know the difference between the dream world,
and the real world? - The Matrix.