Как при помощи функций ( с датами) узнать, кому в таблице 18 и более лет? Учитывая что отсчёт нужно еще вести от определенной даты (8 августа 2018 г)

введите сюда описание изображения

В таблице drivers хранятся данные о гонщиках спортивного клуба. Выведите фамилию, имя и дни рождения гонщиков, допущенных к соревнованиям, в соответствии с условиями:

  1. Допускаются только мужчины 18 лет и старше.
  2. Соревнования проходят 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;
→ Ссылка