Пример простого запроса работы с датами для расчета Возраста (количество полных лет) на определенную дату (&ДатаСреза)
ВЫБРАТЬ Т.ДатаРождения КАК ДатаРождения, ГОД(&ДатаСреза) - ГОД(Т.ДатаРождения) - ВЫБОР КОГДА МЕСЯЦ(Т.ДатаРождения) > МЕСЯЦ(&ДатаСреза) ТОГДА 1 КОГДА МЕСЯЦ(Т.ДатаРождения) = МЕСЯЦ(&ДатаСреза) И ДЕНЬ(Т.ДатаРождения) > ДЕНЬ(&ДатаСреза) ТОГДА 1 ИНАЧЕ 0 КОНЕЦ КАК Возраст ИЗ (ВЫБРАТЬ ДОБАВИТЬКДАТЕ(Т.ДатаРождения, ГОД, -33) КАК ДатаРождения ИЗ (ВЫБРАТЬ ДОБАВИТЬКДАТЕ(&ДатаСреза, МЕСЯЦ, -1) КАК ДатаРождения ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДОБАВИТЬКДАТЕ(&ДатаСреза, МЕСЯЦ, 1) ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДОБАВИТЬКДАТЕ(&ДатаСреза, ДЕНЬ, -1) ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ДОБАВИТЬКДАТЕ(&ДатаСреза, ДЕНЬ, 1)) КАК Т) КАК Т УПОРЯДОЧИТЬ ПО ДатаРождения
Пример вывода для &ДатаСреза = ТекущаяДата() (13.06.2018)
Дата Рождения | Возраст |
13.05.1985 13:49:39 | 33 |
12.06.1985 13:49:39 | 33 |
14.06.1985 13:49:39 | 32 |
13.07.1985 13:49:39 | 32 |
Комментарии
Отправить комментарий