Mam MySQL databazu. Zameriame sa na stlpec v dtb zvany narodenie, kde je napr. datum v tomto formate 1973-11-05
Pomocou vyhladavacieho formulara chcem zobrazit ludi z dtb, ktori maju napr. vek od 36 do 40 rokov.
Do query som dal SELECT * FROM users WHERE (ABS(DATEDIFF(narodenie, NOW())/365) >= 36 AND ABS(DATEDIFF(narodenie, NOW())/365) <= 40 )
Problem je, ze tu osobu nenaslo, hoci ma k dnesnemu dnu 40 rokov. 41 rokov bude mat az v novembri, takze stale ma este 40, hoci ked ratame len roky tak 2014-1973 = 41, ale treba brat do uvahy aj mesiace a dni.
Viete poradit, preco query nefunguje?
// Spojený príspevok Pia 26.09.14 20:24
taak som to nakoniec vyriesil pomocou TIMESTAMPDIFF(YEAR, narodenie, CURRENT_DATE ).. funguje to v pohode a presne...
|