簡體   English   中英

rails 4 在 postgres 的多列上選擇不同的地方和限制

[英]rails 4 select distinct on multiple columns in postgres with where and limit

您如何選擇具有不同值的多個字段以及其他具有不同值的字段,所有這些都在一次調用中使用 where 和 limit? 我嘗試了 .pluck(它支持 rails 4 中的多個字段)、.uniq(在我的情況下不起作用)。

在控制器操作中使用時,這對我有用

@models = Model.select('DISTINCT ON (field1,field2,field3) *')
     .where(id: params[:id])
     .limit(100)

這里有一個不那么冗長、更以 ActiveRecord 為中心的方法,它不僅適用於 Postgres,也適用於 MySQL。

Model.select('field1,field2').distinct.where(field3: 'value').limit(10)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM