sql >> Databasteknik >  >> RDS >> PostgreSQL

Hitta dubblerade värden i matriskolumnen

Använd unnest för att konvertera arrayen till rader och sedan array_agg för att bygga en array från id s

Det borde se ut ungefär så här:

SELECT v AS value_repeated,array_agg(id) AS is_repeated_on FROM 
(select id,unnest(array) as v from my_table) 
GROUP by v HAVING Count(Distinct id) > 1

Observera att HAVING Count(Distinct id) > 1 filtrerar värden som inte visas en gång



  1. Hur många tecken i varchar(max)?

  2. Complex Left Outer Joins i Oracle, konverterar till PostgreSQL

  3. PÅ DUBLIKATNYCKEL:unik begränsning med flera kolumner

  4. SQL Alchemy Relationship loader lämnar ett lås på bordet?