Помогите с датами

Serguitar

Новичок->продвинутый
Помогите с датами

В таблице хранятся данные о дате рождения пользователей в формате YYYY-MM-DD.
Как выбрать пользователей старше 20, но младше 40?
пробовал так
SELECT * FROM table WHERE date_of_birth BETWEEN NOW()-20 AND NOW()-40
 

matross

Новичок
А вот так
SELECT * FROM table WHERE TO_DAYS(NOW())-TO_DAYS(date_of_birth)>20 AND TO_DAYS(NOW())-TO_DAYS(date_of_birth)<40
 

SelenIT

IT-лунатик :)
А может, так?
SELECT * FROM table WHERE date_of_birth BETWEEN DATE_SUB(NOW(), INTERVAL 40 YEAR) AND DATE_SUB(NOW(), INTERVAL 20 YEAR)
 

Фанат

oncle terrible
Команда форума
это дурацкая шутка.
и лучше было бы держать её при себе.
всё там есть.
 
Сверху