Форум программистов, компьютерный форум, киберфорум
Oracle
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
148 / 35 / 6
Регистрация: 01.11.2013
Сообщений: 803

29 февраля в интервале

04.02.2026, 15:17. Показов 425. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Доброго дня.
Как можно определить, входить ли 29 февраля в интервал между двумя датами?
Даты не статичные.
Спасибо.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
04.02.2026, 15:17
Ответы с готовыми решениями:

31 февраля + sql server
Такая проблемма:написал скрипт на асп где делаю выборку из базы по дате от и до, если указать...

Потерялся день - 29 февраля 1900 года
Если я не ошибаюсь 1900 год считается високосным, он же является нулём отсчёта даты в MSSQL, однако...

Аксесс не принимает 29 февраля
Форумчане, доброго времени суток! Возникла проблема- при вводе в БД Аксесс 2003 даты 29...

6
 Аватар для iLinks
800 / 458 / 237
Регистрация: 03.01.2017
Сообщений: 1,339
04.02.2026, 16:07
между датами может быть несколько лет, соответственно интервал может включать от 0 и более високосных годов. Отсюда нюанс. Нужно проверить какой-то конкретный (например последний) или наличие в принципе такого года в интервале.
Разбор второго случая ("наличия вприципе")
1. определяем список годов в интервале
2. определяем в списке год по правилам: "если год делится на 4 без остатка, но делится на 100 только с остатком, то он високосный, иначе — невисокосный, кроме случая, если он делится без остатка на 400 — тогда он всё равно високосный"
ну собственно все, определили в интервале високосные или не високосные года
1
148 / 35 / 6
Регистрация: 01.11.2013
Сообщений: 803
04.02.2026, 16:40  [ТС]
Цитата Сообщение от iLinks Посмотреть сообщение
наличия вприципе
Спасибо.
На примере:
договор заключен 01.03.2025, дата окончания 29.02.2028, интервал 1096
договор заключен 01.02.2025, дата окончания 31.01.2028, интервал 1095
Согласно поставленной задаче, если интервал > 1095, то договор считается "на срок более 3-х лет".

Т.е. сам факт "наличия" високосного года - еще не показатель.
0
148 / 35 / 6
Регистрация: 01.11.2013
Сообщений: 803
05.02.2026, 14:44  [ТС]
iLinks, Сделал так:
подсчитал кол-во "29 февраля" в интервале в году вхождения
с 01.03.2025 по 31.12.2025
+
подсчитал кол-во "29 февраля" в интервале в году выхода
с 01.01.2028 по 29.02.2028
+
(кол-во дней в промежуточных годах) - 365 * (кол-во промежуточных лет)
(с 01.01.2026 по 31.12.2027) - 365 * (2027 - 2026 + 1)
0
42 / 45 / 6
Регистрация: 21.10.2022
Сообщений: 564
Записей в блоге: 2
06.02.2026, 17:12
Цитата Сообщение от govorun Посмотреть сообщение
Спасибо.
На примере:
договор заключен 01.03.2025, дата окончания 29.02.2028, интервал 1096
договор заключен 01.02.2025, дата окончания 31.01.2028, интервал 1095
Согласно поставленной задаче, если интервал > 1095, то договор считается "на срок более 3-х лет".

Т.е. сам факт "наличия" високосного года - еще не показатель.

Не по теме:

Согласно задаче получается какое-то надувательство.

0
943 / 119 / 29
Регистрация: 28.11.2018
Сообщений: 303
06.02.2026, 22:31
Лучший ответ Сообщение было отмечено govorun как решение

Решение

Цитата Сообщение от govorun Посмотреть сообщение
Спасибо.
На примере:
договор заключен 01.03.2025, дата окончания 29.02.2028, интервал 1096
договор заключен 01.02.2025, дата окончания 31.01.2028, интервал 1095
Согласно поставленной задаче, если интервал > 1095, то договор считается "на срок более 3-х лет".
Т.е. сам факт "наличия" високосного года - еще не показатель.
Так вам надо month_between. Эта функция считает число месяцев между датами, и корректно обрабатывает 29 февраля. То есть в обоих ваших случаях, month_between(01.03.2025, 29.02.2028 + 1 день) и month_between(01.02.2025, 31.01.2028 + 1 день) она вернет ровно 36.
1
148 / 35 / 6
Регистрация: 01.11.2013
Сообщений: 803
10.02.2026, 11:22  [ТС]
Цитата Сообщение от zzzxxxccc Посмотреть сообщение
Так вам надо month_between.
Согласен. Что-то я в эту сторону даже и не думал.
Спасибо
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
10.02.2026, 11:22
Помогаю со студенческими работами здесь

Как скрывать 29 февраля в невисокосный год?
Всем Здравия во все органы! Подскаите Люди Добрые, как скрывать 29 февраля в невисокосный текущий...

Вывести и ввести Начисленную зарплату для каждого из сотрудников за январь и февраль
1. Для БД Обслуживающий персонал создайте вторую таблицу Начисленная зарплата с полями Код...

Объединение интервалов дат в случае пересечения или соприкосновения этих интервалов
Добрый вечер. Не могу решить задачу. Нужно написать запрос, который по интервалам объединит эти...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru