Есть ли возможность получить самое близкое значение ниже определенного значения с помощью групповой функции без объединения?Получите самое близкое значение ниже определенного значения и группы по
date productId stock
2014-12-27 1 10
2014-12-31 1 20
2015-01-05 1 30
2014-12-28 2 10
2015-01-04 2 20
Значение является, например, дата и должна быть ниже, чем 2015-01-01, но самое высокое значение даты и результат должен быть заказан фондовой мешочка, поэтому результат должен быть:
date productId stock
2014-12-28 2 10
2014-12-31 1 20
Конечно, это может быть решено с соединением, но объединение в больших таблицах медленнее, не так ли?
Нет, это не правильно, так как меня интересует стоимость акций, которая может быть чем угодно. – Stefan
жаль, что я принял это быстрее, чем прочитал. можете ли вы разместить свой sql, что вы пробовали и т. д., чтобы уточнить? –
Я изменил несколько дат, чтобы сделать его более понятным. Я мог только представить себе решение с помощью SELECT product_id, акции из таблицы LEFT JOIN (SELECT product_id, акции FROM table WHERE date <'2015-01-01' LIMIT 0,1) в качестве table2 ON table.product_id = table2.product_d' , но это медленный запрос на большой таблице. – Stefan