Testet og fungerende version
User.select(:first,:email).group(:first,:email).having("count(*) > 1")
Dette er også lidt uafhængigt, men praktisk. Hvis du vil se, hvor mange gange hver kombination blev fundet, skal du sætte .size til sidst:
User.select(:first,:email).group(:first,:email).having("count(*) > 1").size
og du får et resultat, der ser sådan ud:
{[nil, nil]=>512,
["Joe", "[email protected]"]=>23,
["Jim", "[email protected]"]=>36,
["John", "[email protected]"]=>21}
Syntes det var ret fedt og havde ikke set det før.
Tak til Taryn, dette er blot en tilpasset version af hendes svar.