powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Привязка запроса к системной дате.
6 сообщений из 31, страница 2 из 2
Привязка запроса к системной дате.
    #35914554
AlexBessonov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну тогда так:
Код: plaintext
1.
SELECT ДатыРождения.ДатаРождения, ДатыРождения.ДатаОпределенияВозраста, Int((DateDiff("m",[ДатаРождения],[ДатаОпределенияВозраста])+IIf(Day([ДатаРождения])>Day([ДатаОпределенияВозраста]),- 1 , 0 ))/ 12 ) AS Возраст
FROM ДатыРождения;

Но мой вариант мне больше понравился
P.S. Ну просто потому что он мой (хех, ну не совсем мой) - выстраданный
...
Рейтинг: 0 / 0
Привязка запроса к системной дате.
    #35914574
AlexBessonov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверил, работает в принципе в запросе как и в VBA сложение с логической переменной:
Код: plaintext
1.
SELECT ДатыРождения.ДатаРождения, ДатыРождения.ДатаОпределенияВозраста, Int((DateDiff("m",[ДатаРождения],[ДатаОпределенияВозраста])+(Day([ДатаРождения])>Day([ДатаОпределенияВозраста])))/ 12 ) AS Возраст
FROM ДатыРождения;
...
Рейтинг: 0 / 0
Привязка запроса к системной дате.
    #35915227
AlexBessonovПытаюсь осмыслить. То есть при прибавлении логического значения True к целочисленному происходит уменьшение на единицу, а при False - значение не изменяется?
HelpЕсли значения типа Boolean преобразуются к другим типам данных, то False превращается в 0, а True в -1.
AlexBessonov
Код: plaintext
1.
2.
3.
SELECT ДатыРождения.ДатаРождения, ДатыРождения.ДатаОпределенияВозраста, 
Int((DateDiff("m",[ДатаРождения],[ДатаОпределенияВозраста])+
(Day([ДатаРождения])>Day([ДатаОпределенияВозраста])))/ 12 ) AS Возраст
FROM ДатыРождения;

Если применить целочисленное деление \12, то функция Int становится излишней.
В пылу определения возраста забыли о нуждах автора топика, которому, судя по его "живейшему" участию в обсуждении, это уже наверное совершенно не нужно.
ЁклмнВобщем есть таблица с данными из нее нужно вырезать всех людей которым исполнилось ну скажем 50 лет. Причем данные практически каждый день обновляются, т.е. приходит новая табличка с людьми и нужно также на текущий день вырезать всех кому стукнуло. Мысль есть пока только одна чтоб запрос сверял дату рождения с текущей датой на компе отсчитывал н-количество лет и исключал человека из списка.Для фильтрации можно использовать полученное выражение по определению возраста.
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
mds_worldВообще-то в ТЗ вопроса такого не было.
Проверяющий... хотя в ТЗ об этом как-то невнятно сказано...
Ёклмн... отсчитывал н-количество лет ...
...
Рейтинг: 0 / 0
Привязка запроса к системной дате.
    #35915923
AlexBessonov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ПроверяющийЕсли применить целочисленное деление \12, то функция Int становится излишней...

Млин, сколько я оказывается еще не знаю
Проверяющий...которому, судя по его "живейшему" участию в обсуждении, это уже наверное совершенно не нужно.

Ну мне просто стал интересен сам процесс
...
Рейтинг: 0 / 0
Привязка запроса к системной дате.
    #35916695
Ёклмн
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Парни небольшая поправка, вобщем допустим человеку 1 мая стукнет ровно 50 лет и получается в моммент обработки 1 мая он уже должен быть исключен из таблицы допустим чел. с д.р. 01.05.1959 г.р.а полтинник ему 01.05.2009г. и именно в этот день при обработке он должен быть исключен.
Вобщем блин как мне сказали даже если ему уже 1 секунда его 50-летия его не должно быть в списке. Вот блин, всем спасибо конечно, но столько примеров накидали что аж голова кругом пошла.
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Привязка запроса к системной дате.
    #39134761
DedushkaPAKA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Отпишусь в некротопик. Родилось альтернативное решение точного определения количества полных лет.
Int(([Таблица].[ДатаСравнения]-[Таблица].[ДатаРождения])/365,25)
...
Рейтинг: 0 / 0
6 сообщений из 31, страница 2 из 2
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Привязка запроса к системной дате.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]