Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como definir o SQL para encontrar registros do último domingo até este domingo (1 semana)


Para obter a última meia-noite de domingo anterior, isso deve funcionar. Substitua ambas as instâncias de NOW() com seu datetime para verificar outra data.
SELECT DATE_SUB(DATE(NOW()), INTERVAL DAYOFWEEK(NOW())-1 DAY) latest_sun

Para obter o domingo uma semana antes, use DAYOFWEEK(NOW())+6 DAY .

EDIT:Isso faria sua consulta;
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)