Mysql Query, чтобы получить последние 5 запросов из таблицы

0

Ниже приведена структура таблицы

Я хочу вытащить последние 5 уникальных доменов.

Я пробовал следующий запрос, но он показывает неверные результаты - он стирает google.com с результатов, поскольку он также существует в сравнении с предыдущими идентификаторами: SELECT DISTINCT domain FROM searches ORDER BY id DESC 5

Может кто-нибудь предложить исправление к запросу.

  • 1
    ORDER BY id DESC LIMIT 5
  • 1
    Размещайте свои данные в виде текста, а не изображения.
Показать ещё 1 комментарий
Теги:

4 ответа

2
SELECT DISTINCT domain  
FROM your_table_name  
ORDER BY domain_id DESC
LIMIT 5;

Это получит необходимый вывод !!!

  • 0
    Это недопустимо в режиме ONLY_FULL_GROUP_BY.
  • 0
    SET SQL_MODE='' будет работать, что скажите?
Показать ещё 8 комментариев
0

Предполагая, что вам нужно 5 последних поисков в зависимости от времени,

select * from <tableName> order by serached_at desc limit 5;
0

MySQL имеет предложение LIMIT для этого:

SELECT DISTINCT domain FROM searches ORDER BY id DESC LIMIT 5
0

Я думаю, что вы хотите GROUP BY:

select domain, max(search_at)
from t
group by domain
order by max(search_at) desc;

Это предполагает, что под "последним" вы подразумеваете столбец search_at. Вы можете сделать то же самое с id, если именно так вы определяете "последний".

Также вам не нужно включать max(search_at) в select. Я вставил это, потому что вас это может заинтересовать.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню