sql >> Database >  >> RDS >> PostgreSQL

Vind rijen met meerdere dubbele velden met Active Record, Rails &Postgres

Geteste en werkende versie

User.select(:first,:email).group(:first,:email).having("count(*) > 1")

Dit is ook een beetje niet gerelateerd, maar handig. Als je wilt zien hoe vaak elke combinatie is gevonden, zet je .size aan het einde:

User.select(:first,:email).group(:first,:email).having("count(*) > 1").size

en je krijgt een resultaat terug dat er als volgt uitziet:

{[nil, nil]=>512,
 ["Joe", "[email protected]"]=>23,
 ["Jim", "[email protected]"]=>36,
 ["John", "[email protected]"]=>21}

Ik vond dat best cool en had het nog niet eerder gezien.

Met dank aan Taryn, dit is slechts een aangepaste versie van haar antwoord.



  1. Hoe kan ik een kolom vullen met willekeurige getallen in SQL? Ik krijg dezelfde waarde in elke rij

  2. De naam van de primaire sleutelbeperking voor meerdere tabellen in de SQL Server-database wijzigen - SQL Server / TSQL-zelfstudie, deel 64

  3. De PIVOT-functie in T-SQL begrijpen

  4. Een relatie maken in SQL