0

Я новичок в Ruby on Rails. Я пытаюсь определить правильный рубиновый запрос для следующего SQL-запроса.Нужна помощь в преобразовании SQL-запроса в Ruby.

Выберите max (bid_amount) из конкурсных предложений, где listing_id = 1;

Мне нужно извлечь максимальное значение в столбце bid_amount. Но он должен иметь динамический листинг_id.

ответ

0

Try:

Bidding.where('listing_id = :listing_id', listing_id: 1).maximum(:bid_amount) 

Update:

Чтобы следить за ваш комментарий: так как вы говорите, вы передаете в params[:id], то лучше преобразовать этот параметр в целое, так что нежелательные значения дон Не заходите в базу данных. Напр.

Bidding.where('listing_id = :listing_id', listing_id: params[:id].to_i).maximum(:bid_amount) 
+0

Это сработало! Мне пришлось добавить params [: id], чтобы отобразить правильный листинг_id с маршрута. –

+0

@ RajveerSinghTut, да, вы знали бы, что передать. Но одно дополнительное предложение - если вы передаете 'params [: id]', тогда лучше преобразовать это значение в целое число, то есть 'params [: id] .to_i' – vee

+0

Почему лучше преобразовать это значение в целое число? –

Смежные вопросы