Maison >base de données >tutoriel mysql >Comment récupérer les données MySQL de la semaine dernière à partir de dimanche ?

Comment récupérer les données MySQL de la semaine dernière à partir de dimanche ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-08 16:37:40343parcourir

How to Retrieve MySQL Data from the Past Week Starting on Sunday?

Extraction des données MySQL de la semaine dernière (début dimanche)

Ce guide montre comment récupérer les données MySQL de la semaine dernière, en commençant le dimanche précédent. Nous exploiterons les fonctions de date de MySQL pour y parvenir.

La requête MySQL

La requête suivante filtre efficacement les données pour inclure uniquement les enregistrements des sept derniers jours, à partir du dimanche précédent :

<code class="language-sql">SELECT id
FROM tbname
WHERE date BETWEEN date_sub(CURDATE(), INTERVAL DAYOFWEEK(CURDATE())-1 DAY) AND CURDATE();</code>

Explication détaillée

  • CURDATE() : Renvoie la date actuelle.
  • DAYOFWEEK(CURDATE()) : Détermine le jour de la semaine (1=dimanche, 2=lundi,...,7=samedi) pour la date actuelle.
  • INTERVAL DAYOFWEEK(CURDATE())-1 DAY : Calcule le nombre de jours à soustraire pour atteindre le dimanche précédent. Si aujourd'hui c'est dimanche, cela soustrait 0 jour ; si aujourd'hui c'est lundi, cela soustrait 1 jour, et ainsi de suite.
  • date_sub(CURDATE(), INTERVAL DAYOFWEEK(CURDATE())-1 DAY) : Soustrait le nombre de jours calculé de la date actuelle, ce qui donne la date du dimanche précédent.
  • BETWEEN ... AND CURDATE() : sélectionne les enregistrements dont la colonne « date » se situe dans la plage allant du dimanche précédent à la date actuelle.

Exemple illustratif

Considérez cet exemple de tableau :

id date
2 2011-05-14 09:17:25
5 2011-05-16 09:17:25
6 2011-05-17 09:17:25
8 2011-05-20 09:17:25
15 2011-05-22 09:17:25

L'exécution de la requête ci-dessus renverra :

id
5
6
8

Cela récupère avec précision les identifiants (5, 6 et 8) correspondant aux entrées de la semaine dernière, à partir du dimanche précédent. Notez que les résultats spécifiques dépendront de la date actuelle à laquelle la requête est exécutée.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn