Rails Rails 查询去重问题

Cger007 · 2017年07月07日 · 最后由 cym2015 回复于 2017年07月08日 · 4897 次阅读

通过 rails 的 where 方法查询怎么去字段 event_time 的重复值,保留一条,求大神帮忙解决~

group(:event_time)

#sql语言可以这样
select distinct(event_time) from table_name where ...

使用rails方式就不清楚了

永 first 方法行吗?

用 GROUP?但好像不够规范

Model.group(:column)

例如:获取 users 表中,所有 name 值为'1',并对 event_time 字段去重的数据。

User.where(name: '1').select("distinct event_time ")

如果想只获取一条,后面在再调一下.first

刚看了 rails 官方指南,发现去重有另外一种写法😅

#对name字段去重
Client.select(:name).distinct

链接: https://ruby-china.github.io/rails-guides/active_record_querying.html

需要 登录 后方可回复, 如果你还没有账号请 注册新账号