我希望在Rails中选择相等的表达式,以便进行简单的可能重复的候选检测。
根据字段first_name
,last_name
和email
,以下查询有助于识别可能的重复项:
SELECT id,
-- Equality Expressions
(first_name = :first_name) AS first_name_match,
(last_name = :last_name) AS last_name_match,
(email = :email) AS email_match
FROM examples WHERE (id <> :id)
我尝试使用ActiveRecord以及Arel执行此操作,但看起来您不能在Arel中使用别名等式。
我知道这不是最好的性能方法,尽管我不希望有足够的记录来解决此查询的性能问题。
有没有办法在不使用原始SQL的情况下使用ActiveRecord或Arel构建此查询?