Как при помощи функций ( с датами) узнать, кому в таблице 18 и более лет? Учитывая что отсчёт нужно еще вести от определенной даты (8 августа 2018 г)
В таблице drivers хранятся данные о гонщиках спортивного клуба. Выведите фамилию, имя и дни рождения гонщиков, допущенных к соревнованиям, в соответствии с условиями:
- Допускаются только мужчины 18 лет и старше.
- Соревнования проходят 8 августа 2018 года.
Отсортируйте данные в алфавитном порядке по фамилии и имени.
drivers
id first_name last_name birthday sex
1 Дмитрий Федьков 2000-01-02 m
2 Светлана Иванова 1999-03-02 w
3 Никита Трутнев 2000-08-08 m
4 Денис Кац 2000-08-09 m
5 Алена Сорокина 2001-01-02 w
6 Василий Федьков 2001-01-01 m
7 Ярослав Сорокин 2000-08-01 m
8 Денис Белый 2000-12-09 m
9 Анатолий Дейчман 1998-08-08 m
10 Юлия Фёдорова 2002-08-08 w
Ответы (1 шт):
Автор решения: Alex Mar
→ Ссылка
SELECT
last_name, first_name, birthday
FROM
drivers
WHERE
sex = 'm'
AND TIMESTAMPDIFF(YEAR, birthday, '2018-08-08') >= 18
-- Дата с 18 летним возрастом на 8 августа 2018 года
-- AND birthday <= '2000-08-08'
ORDER BY
last_name,
first_name;