# Функция EXTRACT

Функция `EXTRACT` извлекает отдельные части из даты или даты-времени.

## Синтаксис

`SELECT EXTRACT(что_извлечь FROM дата) FROM имя_таблицы WHERE условие`

Вместо `'что_извлечь'` можно написать, к примеру, DAY - тогда из даты будет извлечен день, или, к примеру, YEAR - тогда будет извлечен год. Если же я напишу так: YEAR_MONTH - то будет извлечен год и месяц (слитно, без разделителя). Если вам нужно извлекать несколько частей не слитно, а используя разделитель - используйте `DATE_FORMAT`.

## Форматы вывода

- SECOND секунды
- MINUTE минуты
- HOUR часы
- DAY дни
- MONTH месяцы
- YEAR года
- MINUTE_SECOND минуты и секунды
- HOUR_MINUTE часы и минуты
- DAY_HOUR дни и часы
- YEAR_MONTH года и месяцы
- HOUR_SECOND часы, минуты, секунды
- DAY_MINUTE дни, часы, минуты
- DAY_SECOND дни, часы, минуты, секунды

## Таблицы для примеров

таблица users
id айди | name имя | date дата рождения
--- | --- | ---
1 | user1 | 1988-03-01
2 | user2 | 1989-04-02
3 | user3 | 1990-05-03

## Пример

В данном примере при выборке из таблицы из даты извлекается день месяца:

`SELECT *, EXTRACT(DAY FROM date) as day FROM users`

Результат выполнения кода:

id айди | name имя | date дата рождения | day день
--- | --- | --- | ---
1 | user1 | 1988-03-01 | 1
2 | user2 | 1989-04-02 | 2
3 | user3 | 1990-05-03 | 3

## Пример

В данном примере при выборке из таблицы из даты извлекается год:

`SELECT *, EXTRACT(YEAR FROM date) as year FROM users`

Результат выполнения кода:

id айди | name имя | date дата рождения | year год
--- | --- | --- | ---
1 | user1 | 1988-03-01 | 1988
2 | user2 | 1989-04-02 | 1989
3 | user3 | 1990-05-03 | 1990

## Пример

В данном примере при выборке из таблицы из даты извлекается год и месяц (слитно):

`SELECT *, EXTRACT(YEAR_MONTH FROM date) as yearmonth FROM users`

Результат выполнения кода:

id айди | name имя | date дата рождения | yearmonth год и месяц
--- | --- | --- | ---
1 | user1 | 1988-03-01 | 198803
2 | user2 | 1989-04-02 | 198904
3 | user3 | 1990-05-03 | 199005

## Смотрите также

- функцию `DATE`,
  которая извлекает дату из даты-времени
- функцию `YEAR`,
  которая извлекает год из даты
- функцию `MONTH`,
  которая извлекает месяц из даты
- функцию `DAY`,
  которая извлекает день из даты

←→
↑