Hallo Tom,
select * from zeit
where datediff
(
date_add(now(), interval 7 day),
concat(year(now()),'-',month(birthday),'-',day(birthday))
)
between 0 and 7;
> so geht es.
nein, so geht es nicht immer. [suit](https://forum.selfhtml.org/?t=186764&m=1240651) hatte bereits auf den Jahreswechsel hingewiesen, den Dein Code nicht berücksichtigt. suit vergaß allerdings auf die Schaltjahrproblematik hinzuweisen, die bei der Verwendung von DAYOFYEAR zusätzlich berücksichtigt werden muss.
Dein Code vernachlässigt die Schaltjahresproblematik in der Form, dass Personen nicht am 29. Februar geboren sein dürfen :-)
~~~sql
SELECT
DATEDIFF(
DATE_ADD(NOW(), INTERVAL 7 DAY),
'2009-02-28'
) differenz
liefert mir 82 als Wert,
SELECT
DATEDIFF(
DATE_ADD(NOW(), INTERVAL 7 DAY),
'2009-02-29'
) differenz
jedoch NULL.
Freundliche Grüße
Vinzenz