leeftijd berekenen in mysql of php?

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mar kla

mar kla

16/01/2010 11:48:00
Quote Anchor link
Van een speler zou ik graag willen uit rekenen hoe oud deze was op de dag van de wedstrijd leeftijd (in jaren, maanden en dagen)

nu is mijn vraag waar ik dat het beste kan doen
a) de query
b) php function

ik heb de drie volgende velden ter beschikking

p.Player_Geb_Date = type date,
p.Player_Rip_Date = type date,
g.Game_DateTime = type datetime,

waarbij opgemerkt dient te worden dat ik niet van iedereen de geboortedatum heb en ik qua data invoer afgevangen is dat er niemand voor zijn geboorte of overlijdensdatum gespeeld kan hebben.

ik heb al iets zitten doen met
DATEDIFF(g.Game_DateTime,p.Player_Geb_Date) AS age,

Maar ik zou graag eerst willen weten wat jullie mening is
in de querey of een functie
 
PHP hulp

PHP hulp

30/11/2020 09:45:42
 
Joren de Wit

Joren de Wit

16/01/2010 11:58:00
Quote Anchor link
De query die je in MySQL gebruikt om een leeftijd te bepalen is de volgende:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
SELECT
  g.Game_DateTime,
  p.Player_Geb_Date,
  YEAR(g.Game_DateTime) - YEAR(p.Player_Geb_Date)
    - (RIGHT(DATE(g.Game_DateTime),5) < RIGHT(p.Player_Geb_Date, 5))
  AS age
FROM
  tabel
Gewijzigd op 01/01/1970 01:00:00 door Joren de Wit
 
Mar kla

mar kla

16/01/2010 12:06:00
Quote Anchor link
thnx Blanche

zoiets had ik ook al gevonden


Maar ik zou graag ook het aantal maanden en dagen er bij willen hebben
 
Joren de Wit

Joren de Wit

16/01/2010 12:48:00
Quote Anchor link
markla schreef op 16.01.2010 12:06:
Maar ik zou graag ook het aantal maanden en dagen er bij willen hebben
Hoe bedoel je dat?
 
Mar kla

mar kla

16/01/2010 13:06:00
Quote Anchor link
stel:

de wedstrijd is gespeeld op 01-10-1974 en de spelers is geboren op 21-09-1950

dan was hij op de wedstrijddag: 24 jaar, 1 maand en 20 dagen oud. (of zo iets)
 
Joren de Wit

Joren de Wit

16/01/2010 13:10:00
Quote Anchor link
Dan kun je die query verder uitbreiden. Je hebt het aantal jaar al, nu alleen nog de maanden en dagen. Ook dat is een kwestie van de ene waarde van de andere aftrekken, waarbij je natuurlijk wel moet controleren of er geen negatieve waarden uitkomen. Als dat wel het geval is, zul je in het geval van de maanden er 12 bij op moeten tellen en in het geval van de dagen het aantal dagen van de betreffende maand...
 
Mar kla

mar kla

16/01/2010 14:11:00
Quote Anchor link
Ik heb al zitten kijken maar je moet met van alles rekening houden:-(

Schikkeljaren, de tussen liggende maanden etc.

Ik heb al wat phpfuncties en queries op internet gevonden maar die zijn net niet wat ik zoek. :-(
 
Joren de Wit

Joren de Wit

16/01/2010 16:18:00
Quote Anchor link
Als je er zo over nadenkt is het ook onlogisch om een leeftijd samen te stellen met zowel jaren, maanden en dagen. Deze grootheden kun je eigenlijk niet combineren. Een maand kun je niet eenduidig uitdrukken in een aantal dagen aangezien het aantal dagen per maand telkens verschilt.
 
Mar kla

mar kla

16/01/2010 18:59:00
Quote Anchor link
Het script wat hier achter zit zou ik eigen willen " hebben"
http://www.timeanddate.com/date/duration.html
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.