Hallo,
ich bin noch Anfänger mit mysql und php und habe ein Problem und hoffe, dass mir geholfen werden kann (in der Suchfunktion konnte ich leider nix finden):
ich betreibe eine Vereinsseite meines Kegelclubs. Auf ner MySQL-Datenbank sind die ganzen Mitglieder aufgeführt. Bei der Berechnung der Dauer der Vereinszugehörigkeit habe ich bei dem ältesten Mitglied ein Problem. Er trat am 18.04.1964 in den Verein ein, ist also 60 Jahre und knapp 2 Monate dabei.
Die Tabelle mitgliedsdauer besteht aus id, member_id, eintritt, austritt, eintritt1, austritt1,
eintritt und austritt = Datum in amerikanischer Schreibweise
eintritt1 und austritt1 = Datum in deutscher Schreibweise
Hier meine Abfrage:
Bei meiner Abfrage, welche ich als Jahre und als Tage ausgebe erscheint aber, dass er „nur“ 59 Jahre dabei ist ☹
Die Tage stimmen.
Was mache ich da falsch?
mfg
ezi116
ich bin noch Anfänger mit mysql und php und habe ein Problem und hoffe, dass mir geholfen werden kann (in der Suchfunktion konnte ich leider nix finden):
ich betreibe eine Vereinsseite meines Kegelclubs. Auf ner MySQL-Datenbank sind die ganzen Mitglieder aufgeführt. Bei der Berechnung der Dauer der Vereinszugehörigkeit habe ich bei dem ältesten Mitglied ein Problem. Er trat am 18.04.1964 in den Verein ein, ist also 60 Jahre und knapp 2 Monate dabei.
Die Tabelle mitgliedsdauer besteht aus id, member_id, eintritt, austritt, eintritt1, austritt1,
eintritt und austritt = Datum in amerikanischer Schreibweise
eintritt1 und austritt1 = Datum in deutscher Schreibweise
Hier meine Abfrage:
Code:
$sqlBefehl = 'SELECT
id, nickname, nachname, geburtstag, eintritt1, max( austritt1 ) AS austritt1,
SUM(TIMESTAMPDIFF(YEAR, eintritt, IFNULL(austritt, CURDATE()))) AS dauer_jahre,
SUM(TIMESTAMPDIFF(DAY, eintritt, IFNULL(austritt, CURDATE()))) AS dauer
FROM mitgliedsdauer, member
where id=member_id
GROUP BY member_id
ORDER BY dauer ASC';
Bei meiner Abfrage, welche ich als Jahre und als Tage ausgebe erscheint aber, dass er „nur“ 59 Jahre dabei ist ☹
Die Tage stimmen.
Was mache ich da falsch?
mfg
ezi116