Maison  >  Article  >  base de données  >  Comment trouver le premier jour de la semaine dans MySQL ?

Comment trouver le premier jour de la semaine dans MySQL ?

Barbara Streisand
Barbara Streisandoriginal
2024-11-11 21:00:04442parcourir

How to Find the First Day of the Week in MySQL?

Obtention du premier jour de la semaine dans MySQL

Lorsque l'on traite des données temporelles dans des bases de données, il est souvent nécessaire de déterminer le premier jour d'un élément donné semaine. Ceci est particulièrement utile pour regrouper des données et analyser les tendances au fil du temps.

L'énoncé du problème

Un utilisateur a une requête qui regroupe les données par semaines mais souhaite afficher le premier jour de chaque semaine au lieu de dates différentes. Ils ont identifié une date (03/01/2011) et doivent récupérer le premier jour de la semaine correspondant (02/01/2011).

Semaine commençant le dimanche

Si la semaine commence un dimanche, l'expression MySQL suivante peut être utilisée :

DATE_ADD(mydate, INTERVAL(1-DAYOFWEEK(mydate)) DAY)

Cette expression calcule le premier jour de la semaine en soustrayant le jour actuel de la semaine (en base 1) de la date donnée puis en ajoutant 1 jour.

Semaine commençant le lundi

Si la semaine commence le lundi, une expression différente est requise :

DATE_ADD(mydate, INTERVAL(-WEEKDAY(mydate)) DAY);

Dans ce cas, le jour actuel de la semaine (basé sur 0) est soustrait de la date donnée pour déterminer le nombre de jours à remonter pour atteindre lundi.

Exemple d'utilisation

Supposons que nous ayons la date suivante, qui représente le 03/01/2011 :

'2011-01-03'

Si l'on suppose que la semaine commence le dimanche, nous pouvons utiliser la première expression pour trouver la premier jour de la semaine :

SELECT DATE_ADD('2011-01-03', INTERVAL(1-DAYOFWEEK('2011-01-03')) DAY);

Cela produira le résultat suivant :

2011-01-02

Comme prévu, le premier jour de la semaine commençant le dimanche est le 02/01/2011.

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