PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Remover linhas duplicadas com base no campo em uma consulta selecionada com o PostgreSQL?


Use DISTINCT ON :
SELECT DISTINCT ON (contenthash)
  id,
  contenthash,
  filesize,
  to_timestamp(timecreated) :: DATE
FROM mdl_files
ORDER BY contenthash, timecreated, id;

DISTINCT ON é uma extensão do Postgres que garante que retorna uma linha para cada combinação única das chaves entre parênteses. A linha específica é a primeira encontrada com base no order by cláusula.