voir la fonction MySQL YEARWEEK() .
Vous pourriez donc faire quelque chose comme
SELECT * FROM table WHERE YEARWEEK(purchased) = YEARWEEK(NOW());
Vous pouvez changer le jour de début de la semaine en utilisant un deuxième paramètre de mode
Ce qui pourrait être mieux cependant est de calculer d'une manière ou d'une autre la date de 'dernier dimanche à 00h00', et alors la base de données n'aurait pas à exécuter une fonction pour chaque ligne, mais je ne voyais pas de moyen évident de le faire dans MySQL . Vous pouvez cependant facilement générer ceci en php et faire quelque chose comme
$sunday = date(('Y-m-d H:i:s'), strtotime('last sunday 00:00'));
$sql = "SELECT * FROM table WHERE purchased >= '$sunday'";