41
`alter` ist in deiner Abfrage kein reales Datenfeld sondern nur ein Alias, der in einer WHERE Klausel nicht zur Verfügung steht - dafür aber in einer HAVING Klausel:
http://dev.mysql.com/doc/refman/5.1/de/problems-with-alias.html
Ich würde es so probieren:
http://dev.mysql.com/doc/refman/5.1/de/problems-with-alias.html
Ich würde es so probieren:
WHERE CONCAT(IF(MONTH(geburtsdatum) < MONTH(CURDATE()), YEAR(CURDATE()) + 1, YEAR(CURDATE())), DATE_FORMAT(geburtsdatum, '%m'))
BETWEEN PERIOD_ADD(DATE_FORMAT(CURDATE(), '%Y%m'), 1)
AND PERIOD_ADD(DATE_FORMAT(CURDATE(), '%Y%m'), 2)
HAVING `alter` IN('50', '60', '70', '80', '90', '100')