powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / проверка возраста +18
7 сообщений из 7, страница 1 из 1
проверка возраста +18
    #38807632
Фотография Legushka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
добрый день, перехожу со скуля на Postgre-)
подскажите как можно проверить у пользователя возраст на 18 летие?

в таблице есть поле birt_date, у разных персон есть даты рождения (например '1991-01-15' и '2001-05-20')
какую формулу можно сделать что бы возвращалось 1 если есть 18 лет и 0 если еще нет
с точностью до дня
...
Рейтинг: 0 / 0
проверка возраста +18
    #38807641
Фотография Legushka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
подскажите как перевести количество дней в дату, дальше я сам)
...
Рейтинг: 0 / 0
проверка возраста +18
    #38807646
Фотография Legushka
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
сам себе ответил:
Код: plsql
1.
select case when (18-extract (year from age(timestamp DDD))>=0) then 1 else 0 end from ...



ребята подскажите для очень большой базы этот запрос критичен?
может есть быстрее способ?
...
Рейтинг: 0 / 0
проверка возраста +18
    #38807649
Лопата
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Legushkaсам себе ответил:
Код: plsql
1.
select case when (18-extract (year from age(timestamp DDD))>=0) then 1 else 0 end from ...



ребята подскажите для очень большой базы этот запрос критичен?
может есть быстрее способ?
индекс по birthday есть ?

если есть -- примерно
Код: sql
1.
WHERE birthday <= F{дата выборки, возрастной порог, прочая дебиловатая шняга задаваемая единожды}::date



запихнёшь свои измышления в F{} -- маладец
нет -- читай зиФакинМанъюал по фанкшанам до просветления
...
Рейтинг: 0 / 0
проверка возраста +18
    #38807650
Лопата
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
поцкриптум:
фаншан желательно иммутабный. совсем накрайняк - стабиловатый, и невкоем -- не волатильный.
...
Рейтинг: 0 / 0
проверка возраста +18
    #38807676
/\/\/\/\/\/\
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Может, имеет смысл пойти другим путем и немного изменить вопрос.
То есть спрашивать:
- Раньше какой даты должен родиться пользователь, чтобы ему было 18 полных лет?
Тогда исчезает функция, а появляется тупое (то есть целиком для индекса) сравнение.
...
Рейтинг: 0 / 0
проверка возраста +18
    #38807782
Alexius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Legushka,

Код: sql
1.
select (birthday < NOW() - interval '18 years') as ...



проверил, вроде бы работает. зачем усложнять?
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / проверка возраста +18
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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