Вычислить возраст по дате рождения
Опубликовано в Втр, 17/01/2012 - 12:47
mysql
Более универсальный вариант SQL запроса из официальной документации:
SELECT
birthday,
(
(YEAR(CURRENT_DATE) - YEAR(birthday)) - /* step 1 */
(DATE_FORMAT(CURRENT_DATE, '%m%d') < DATE_FORMAT(birthday, '%m%d')) /* step 2 */
) AS age
FROM users
Смысл следующий — первым шагом вычитаем из текущего года, год рождения, вторым шагом вычитаем единичку если дня рождения в этом году ещё не было.
birthday это поле с датой в любом валидном формате (не timestamp), например 1989-07-22 или даже 1989-07-22T00:00:00.
Комментарии:
Нету комментариев для вывода...