Изучаю sql, не могу выполнить задание.
Есть у меня таблица:
|id | quarter | latest_vizit_date |
=====================================================================
|1 | 1 | 2019-03-28 |
|1 | 2 | 2021-05-19 |
|1 | 3 | 2018-09-25 |
|1 | 4 | 2018-12-27 |
|2 | 1 | 2021-03-18 |
|2 | 2 | 2021-06-03 |
|2 | 3 | 2020-09-03 |
|2 | 4 | 2020-12-10 |
Мне в столбце latest_vizit_date заменить все даты на самую позднюю (бОльшую, последнюю). На выходе должно быть следующее:
|id | quarter | latest_vizit_date |
=====================================================================
|1 | 1 | 2021-05-19 |
|1 | 2 | 2021-05-19 |
|1 | 3 | 2021-05-19 |
|1 | 4 | 2021-05-19 |
|2 | 1 | 2021-06-03 |
|2 | 2 | 2021-06-03 |
|2 | 3 | 2021-06-03 |
|2 | 4 | 2021-06-03 |
Есть догадка, что должно быть как-то так:
update mytable
set latest_vizit_date = @max_date
Но как определить
@max_date
не знаю. Пытался так:
@max_date := max(latest_vizit_date)
- ищется по всему столбцу, а мне надо чтоб с учетом отдельного id и в рамках кварталов с 1 по 4.