MySQL: оператор WHERE IN и ORDER BY DESC

234
01 февраля 2020, 21:40

Существует таблица table(timestamp, 'id', 'price'). В таблице более 20 тыс. строк. Пары не уникальны, обновляются на определенную дату. Пример запроса:

SELECT `timestamp`, `id`, `price` 
FROM `db`.`table` 
WHERE `id` IN ('id08', 'id54', 'id382' ... т.д.) 
GROUP BY `id` 
ORDER BY `timestamp` DESC;

Необходимо получить последние цены(price) на последнюю дату(самые свежие) по заданному массиву id.

Текущий запрос подхватывает price первый, что содержится в таблице.

Answer 1
 SELECT `b`.* FROM (SELECT MAX(`timestamp`) as `timestamp`, `id` FROM `db`.`table` WHERE `id` IN ('id08', 'id54', 'id382' ... т.д.)  GROUP BY `id`) as `a` LEFT JOIN `db`.`table` as `b` ON `a`.`id`=`b`.`id` AND `a`.`timestamp`=`b`.`timestamp`
READ ALSO
Redirect 404 и AJAX

Redirect 404 и AJAX

На локальной машине (Win7 x64) имеется Apache (24

204
Дублируются изображения laravel

Дублируются изображения laravel

В базе есть url изображенийСкрипт должен перебирать, загружать каждое на сервер в 3 папки: основная, копия, копия меньшего размера

194
Помогите правильно написать echo

Помогите правильно написать echo

Помогите правильно написать echoВыдает ", когда должно было написать Подробнее/Заказать

233
Заполнение таблицы из ajax-запроса

Заполнение таблицы из ajax-запроса

Работаю через MVC PHP Framework и мне нужно записывать данные из формы в таблицу БДДанные записываются, но также в эту же таблицу мне нужно загружать...

237