ActiveRecord查询与字段中的表别名

时间:2012-04-09 11:03:15

标签: ruby-on-rails-3 activerecord

如何在rails 3.2中将此查询转换为范围? 关键是访问两个不同的表条目并选择两者共有的信息。

SELECT u1.FirstName, u2.FirstName
FROM User AS u1, User AS u2
WHERE u2.LastName=u1.LastName

您是否知道通过更好的性能实现此目的的其他方法?

干杯

1 个答案:

答案 0 :(得分:2)

假设我理解你的问题,你可以这样做:

User.joins('join users as u2 on users.last_name = u2.last_name and users.id != u2.id')

这将为您提供与任何其他用户具有相同姓氏的所有用户。