私は誕生日のあるテーブルをYYYY-MM-DDでフォーマットしています。私の目的は、誕生日が7日以内なら結果を返すことです。曜日と月のみを使用して次の7日間を選択してください
年を読むと、1993年の誕生日は決して7日間以内になることはないため、月と日のみを使用する必要があります。また、月の変更を考慮する必要があります。
たとえば、2月28日の誕生日と3月1日の誕生日は7日以内で、同じ月内ではありません。
SELECT * FROM user WHERE DATE_FORMAT(birthday, '%m-%d') >= DATE_FORMAT(NOW() - INTERVAL 7 DAY, '%m-%d')
これは私が今どこにいるかですが、私はマイルがないことを知っています。
なぜあなたの値を取得する間に使用し、その後、DATE_ADD使用しませんか? 'SELECT * FROM表WHERE date BETWEEN BETWEEN date1 and date2'? – Takarii