Mysql
 sql >> Datenbank >  >> RDS >> Mysql

So stellen Sie SQL ein, um Datensätze vom letzten Sonntag bis zu diesem Sonntag zu finden (1 Woche)

Um den spätesten vorangehenden Sonntag um Mitternacht zu erhalten, sollte dies reichen. Ersetzen Sie beide Instanzen von NOW() mit Ihrer Datumszeit, um ein anderes Datum zu überprüfen.

SELECT DATE_SUB(DATE(NOW()), INTERVAL DAYOFWEEK(NOW())-1 DAY) latest_sun

Um den Sonntag eine Woche früher zu bekommen, verwenden Sie stattdessen DAYOFWEEK(NOW())+6 DAY .

EDIT:Das würde Ihre Abfrage machen;

SELECT COUNT(author)
FROM `posts` 
WHERE author='FooBar'
  AND `date` >= DATE_SUB(DATE(NOW()), INTERVAL DAYOFWEEK(NOW())+6 DAY)
  AND `date` <  DATE_SUB(DATE(NOW()), INTERVAL DAYOFWEEK(NOW())-1 DAY)