Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Distinto em apenas uma coluna - exibir apenas a PRIMEIRA linha duplicada


Você provavelmente deve adicionar outra coluna. Agora é possível obter registros distintos para cada account_id usando GROUP BY cláusula, mas os resultados de todas as colunas não agregadas podem ser ambíguos. Você precisa ter algum pedido aprovado ou indicador dentro do grupo para determinar qual registro para cada acout_id é "primeiro". Com a marcação de coluna qual registro em cada grupo é a primeira consulta é simples. Sem ele você tem que aceitar alguma consulta dizendo qual registro é o "primeiro". No exemplo de ordem alfabética de full_name:
SELECT account_id, 
       full_name, 
       email, 
       login, 
       phone, 
       updated_at, 
       last_request_at, 
       unconfirmed_email 
  FROM table1 WHERE full_name IN (
    SELECT MIN(full_name) 
      FROM table1 
      GROUP BY account_id 
      WHERE id < '300'
  )