Как одним select выбрать максимальную дату в MYSQL?

Есть таблица, в которой есть тип поля datetime и timestamp. Мне нужно выбрать максимальное по времени (тип datetime) значение. Пишу :

select info, MAX(date) from table

Он мне выдает максимальную дату все ОК, но значение info от первой строки в результате выборки.

Правильно работает конструкция:

Select * from table where date IN (SELECT MAX(`date`) as `time` FROM `table`)

Я правильно понимаю, что только через вложенный селект можно это сделать? Т.е в одном селекте нельзя.
  • Вопрос задан
  • 13934 просмотра
Решения вопроса 1
DevMan
@DevMan
вы правильно понимаете: если нужно получить все записи с максимальной датой, то без подзапроса не обойтись.

PS у вас вопрос расходится с кодом.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Melkij
@Melkij
PostgreSQL DBA
Одну строку?
select info, date from table order by date desc limit 1;

Если все строки с одинаковой максимальной датой - то да, подзапрос.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы