Вычисление количества вторников между двумя датами в TSQL
Определение количества вторников между двумя датами является распространенной проблемой в программировании TSQL. Один из эффективных подходов описан в t-clausen.dk:
Для расчета экземпляров каждого дня недели:
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
Этот запрос возвращает количество вхождений каждого дня недели в указанном диапазоне дат. . Вычисления основаны на следующих принципах:
Применяя этот метод, вы можете легко определить количество вторников или любого другого дня недели в пределах заданного дата диапазон.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3