У меня есть модель Rails модели под названием Orders, у которой есть тип_ид, местоположение и цена. Каждый тип может иметь несколько заказов в одном месте с разными ценами. Ниже дается представление о структуре таблицы.Ruby on Rails получает записи по самой высокой цене
id | type_id | location_id | price
-----------------------------------
1 | 1 | 1 | 12
2 | 1 | 1 | 14
3 | 1 | 1 | 9
4 | 2 | 1 | 1
5 | 2 | 1 | 4
6 | 3 | 1 | 15
7 | 3 | 1 | 7
Я в основном хотел, чтобы выбрать все записи по TYPE_ID используя IN
пример:
type_ids = "1,2,3"
location_id = 1
Order.find(:all, :conditions => ["location_id = ? and type_id in (?)", location_id, type_ids])
Я только хочу, чтобы выбрать запись с самой высокой ценой для каждого типа в этом месте, так что результат set вернет записи с идентификаторами 2, 5 и 6.
Как представляется, я не могу найти запрос на поиск, надеюсь, вы понимаете, что я имею в виду. Если не спросить, я могу попробовать и объяснить лучше.
Приветствие
Eef
I originaly написал приложение в PHP, и я делал запрос к базе данных для каждого типа, он работал нормально. У меня никогда не будет более 44 типов, поэтому я думаю, что я могу использовать более простой подход, но я также дам запрос bash. Спасибо за это! – RailsSon