Maison > base de données > tutoriel mysql > Comment calculer le nombre de mardis entre deux dates en TSQL ?

Comment calculer le nombre de mardis entre deux dates en TSQL ?

Barbara Streisand
Libérer: 2024-10-28 20:45:30
original
787 Les gens l'ont consulté

How to Calculate the Number of Tuesdays Between Two Dates in TSQL?

Calcul du nombre de mardis entre deux dates en TSQL

Déterminer le nombre de mardis entre deux dates est un défi courant dans la programmation TSQL. Une approche efficace est décrite par t-clausen.dk :

Pour calculer les instances de chaque jour de la semaine :

<code class="tsql">declare @from datetime = '3/1/2013' 
declare @to datetime  = '3/31/2013' 


select 
 datediff(day, -7, @to)/7-datediff(day, -6, @from)/7 AS MON,
 datediff(day, -6, @to)/7-datediff(day, -5, @from)/7 AS TUE,
 datediff(day, -5, @to)/7-datediff(day, -4, @from)/7 AS WED,
 datediff(day, -4, @to)/7-datediff(day, -3, @from)/7 AS THU,
 datediff(day, -3, @to)/7-datediff(day, -2, @from)/7 AS FRI,
 datediff(day, -2, @to)/7-datediff(day, -1, @from)/7 AS SAT,
 datediff(day, -1, @to)/7-datediff(day, 0, @from)/7 AS SUN</code>
Copier après la connexion

Cette requête renvoie le nombre d'occurrences de chaque jour de la semaine dans le plage de dates spécifiée. Les calculs sont basés sur les principes suivants :

  • La fonction datediff calcule la différence entre deux dates en jours.
  • L'expression -7 représente le dimanche précédant la date de début.
  • L'expression -6 représente le lundi précédant la date de début.
  • La division par 7 regroupe les jours par semaine.
  • La soustraction du nombre de jours à partir de la date de début vers le haut au lundi précédant la date de début calcule le nombre de semaines entre les dates de début et de fin.
  • La soustraction du nombre de jours depuis la date de fin jusqu'au jour de la semaine avant la date de fin calcule le nombre de jours restants au cours de la semaine dernière.

En appliquant cette méthode, vous pouvez facilement déterminer le nombre de mardis ou tout autre jour de la semaine dans une plage de dates donné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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal