unir tabla solo repetir repetidos registros mostrar misma menos eliminar duplicados dejando consultas consulta buscar sql postgresql select array-agg

tabla - sql eliminar registros repetidos dejando solo 1



Cómo eliminar duplicados, que se generan con la función array_agg postgres (1)

Puede usar la palabra clave distinct dentro de array_agg :

SELECT ARRAY_TO_STRING(ARRAY_AGG(DISTINCT CONCAT(u.firstname, '' '', u.lastname)), '', '') FROM log_has_item logitem INNER JOIN log log ON log.id = logitem.log_id INNER JOIN worker u ON log.worker_id = u.id WHERE logitem.company_id = 1

SQLFiddle con este ejemplo

¿Alguien tiene una idea de cómo reescribir siguiendo una consulta SQL para generar resultados, que solo contiene una aparición de nombre? (resultados agrupados por usuario).

La consulta

SELECT array_to_string(array_agg(CONCAT(u.firstname, '' '', u.lastname)), '', '') FROM log_has_item logitem INNER JOIN log log ON log.id = logitem.log_id INNER JOIN worker u ON log.worker_id = u.id WHERE logitem.company_id = 1

La consulta ejecutable está disponible en sqlfiddle.com . Haga clic en el botón Ejecutar SQL y obtendrá el resultado, que contiene Frantisek Smith dos veces