วิธีใดดีที่สุดในการค้นหาระเบียนที่มีค่าซ้ำกันในหลายคอลัมน์โดยใช้ Postgres และ Activerecord
ฉันพบวิธีแก้ปัญหานี้ที่นี่ :
User.find(:all, :group => [:first, :email], :having => "count(*) > 1" )
แต่ดูเหมือนจะใช้ไม่ได้กับ postgres ฉันได้รับข้อผิดพลาดนี้:
PG :: GroupingError: ข้อผิดพลาด: คอลัมน์ "parts.id" ต้องปรากฏในคำสั่ง GROUP BY หรือใช้ในฟังก์ชันการรวม
select a.id, b.id, name, email FROM user a INNER JOIN user b USING (name, email) WHERE a.id > b.id
ปกติผมจะใช้ตัวเองเข้าร่วมบางอย่างเช่น ไม่รู้จะแสดงออกอย่างไรใน ActiveRecord-speak