Você recebe inserções de streaming com possíveis linhas duplicadas (ID exclusivo + timestamp presentes). Para consultas interativas que excluem duplicatas, qual padrão de consulta você deve usar?
Escolha uma resposta
Toque em uma opção para verificar sua resposta.
Resposta correta: Usar a função de janela ROW_NUMBER com PARTITION por ID exclusivo junto com WHERE row equals 1..
Por que esta é a resposta
A função de janela ROWNUMBER() com PARTITION BY no ID exclusivo e ORDER BY no timestamp (ou outra coluna para desempate) é a solução mais eficaz para remover duplicatas e manter a linha mais recente (ou a primeira, dependendo da ordenação). Ao filtrar WHERE rownumber = 1, você garante que apenas uma linha por ID exclusivo seja selecionada. As outras opções são incorretas porque: ORDER BY DESC e LIMIT 1 só retornariam uma única linha de todo o conjunto de dados, não uma linha por ID. GROUP BY no ID e timestamp não removeria duplicatas, pois cada combinação única de ID e timestamp seria tratada como um grupo distinto. LAG é usado para acessar uma linha anterior dentro de uma partição, não para desduplicar.
Passe no seu exame — sem a busca interminável por respostas
Obtenha todas as perguntas e explicações verificadas para este exame em um só lugar e economize horas de preparação. Mais de 1.000 certificações · Mais de 20 idiomas · Grátis para começar.
Passe no seu exame mais rápido → Não é necessário cartão