Maison >base de données >tutoriel mysql >Comment générer efficacement une plage de dates de 365 jours en SQL ?

Comment générer efficacement une plage de dates de 365 jours en SQL ?

Patricia Arquette
Patricia Arquetteoriginal
2025-01-06 17:25:42623parcourir

How to Efficiently Generate a 365-Day Date Range in SQL?

Génération d'une plage de dates à l'aide de SQL

Pour générer une plage de dates pour l'exécution de SQL, une exigence courante est d'itérer sur une période spécifique . Dans ce scénario, l'objectif est de créer une liste des 365 jours précédents.

Conventionnellement, créer une liste de jours à l'aide de nombres (par exemple, de 0 à 364) est une solution viable. Cependant, l'utilisation d'une approche plus efficace élimine le besoin de tables volumineuses ou d'opérations supplémentaires.

La requête SQL optimale pour générer une plage de dates pour les 365 derniers jours est :

SELECT TRUNC (SYSDATE - ROWNUM) dt
  FROM DUAL CONNECT BY ROWNUM < 366

Cette requête exploite la fonction TRUNC pour déterminer les dates de chaque ligne, en commençant par la date actuelle (SYSDATE) et en soustrayant la valeur incrémentielle de ROWNUM. La clause CONNECT BY exécute la requête de manière itérative pour autant de lignes que spécifié dans le conditionnel (ROWNUM < 366 dans ce cas).

Le résultat est une liste de dates représentant les 365 jours précédents. Cette liste peut être utilisée dans des sous-requêtes ou des jointures pour récupérer des données pour la période spécifié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