Close Menu
Código Simples .NETCódigo Simples .NET
    Facebook X (Twitter) Instagram
    Trending
    • NewSQL em 2025: O Estado Atual, Tendências e o Futuro dos Bancos de Dados Relacionais Escaláveis
    • 12 Regras Essenciais para Reduzir a Latência de Aplicações
    • Cache Hit Ratio: Como uma Simples Métrica Pode Revolucionar sua Arquitetura
    • Como a Uber calcula o tempo estimado de chegada
    • 30 APIs Gratuitas para desenvolvedores
    • Por que escalar escrita é tão mais difícil do que escalar leitura?
    • MongoDB Analyzer para .NET: Visualize e otimize suas consultas de forma simples
    • Cardinalidade: O Conceito que Transforma o Desempenho de Bancos de Dados SQL e NoSQL
    Facebook X (Twitter) Instagram
    Código Simples .NETCódigo Simples .NET
    Código Simples .NETCódigo Simples .NET
    Home»Banco de dados»Sql»Diferenças entre Distinct e Group By – SQL Server

    Diferenças entre Distinct e Group By – SQL Server

    Jhonathan SoaresBy Jhonathan Soares18 de maio de 20142 Mins Read Sql
    Share
    Facebook Twitter LinkedIn WhatsApp Copy Link

    Qual é a diferença entre DISTINCT e GROUP BY?

     

    SQL

    Esta pergunta muitas vezes vem a minha cabeça. Apesar de me considerar um aprendiz em relação à banco de dados, vira e mexe eu acabo tendo que me virar, pois bem, após algumas pesquisas consegui resumidamente descobrir a diferença entre essas duas funções do SQL.

     

    A função DISTINCT e GROUP BY normalmente geram o mesmo plano de consulta, de modo que o desempenho deve ser o mesmo em ambas as construções de consulta. Fiz alguns testes locais em pequenas quantidades ( cerca de 1000 registros e o desempenho foi o mesmo )

    A função GROUP BY deve ser utilizada para aplicar os operadores de agregação para cada grupo. Se tudo o que você precisa é para remover duplicatas então use DISTINCT.

    O que eu pude perceber que inicialmente os algoritmos de DISTINCT e GROUP BY são idênticos. A diferença entre os algoritmos é que o GROUP BY permite funções de agregação como um passo adicional enquanto que o DISTINCT não permite. Quando se utiliza o GROUP BY sem essas funções, estaremos “repetindo” exatamente as fases iniciais que o DISTINCT utiliza e implementando as sub-funções de agregação do GROUP BY.

    Veja alguns exemplos que lhe ajudarão a entender de maneira mais “dinâmica” :

    Exemplo de Distinct:

    SELECT DISTINCT Pessoa, Email
    FROM Pessoas
    

    Exemplo de Group By:

    SELECT Pessoa, Email
    FROM Pessoas
    GROUP BY Pessoa, Email
    

    Exemplo de agregação com Group By :

    SELECT Pessoa, Email, COUNT(*) Total
    FROM Pessoas
    GROUP BY Pessoa, Email
    

     

    Bom, ficamos por aqui hoje com esta dica rápida!

     


    Share. Facebook Twitter LinkedIn Telegram WhatsApp Copy Link
    Jhonathan Soares
    • Website
    • Facebook
    • X (Twitter)
    • LinkedIn

    Criador do blog Código Simples e com mais 15 anos de experiência em TI, com títulos de MVP Microsoft na área de Visual Studio Development, Neo4j Top 50 Certificate, Scrum Master e MongoDB Evangelist.

    Posts Relacionados

    Cardinalidade: O Conceito que Transforma o Desempenho de Bancos de Dados SQL e NoSQL

    NoSql Sql 14 de janeiro de 20257 Mins Read

    Entendendo os diferentes tipos de locks em bancos de dados e como evitá-los

    NoSql Sql 2 de julho de 20248 Mins Read

    Happy Hour com Dados #14 – Modelagem de Dados

    Dicas NoSql Sql 22 de setembro de 20201 Min Read
    Newsletter

    Digite seu endereço de e-mail para receber notificações de novas publicações por e-mail.

    Junte-se a 25mil outros assinantes
    Posts recentes
    • NewSQL em 2025: O Estado Atual, Tendências e o Futuro dos Bancos de Dados Relacionais Escaláveis
    • 12 Regras Essenciais para Reduzir a Latência de Aplicações
    • Cache Hit Ratio: Como uma Simples Métrica Pode Revolucionar sua Arquitetura
    • Como a Uber calcula o tempo estimado de chegada
    • 30 APIs Gratuitas para desenvolvedores
    Categorias
    • Arquitetura (14)
      • Testes (2)
    • Asp.net (120)
      • C# (89)
      • Mvc (13)
    • Banco de dados (90)
      • NoSql (58)
      • Sql (38)
    • Boas práticas (29)
      • Gestão & Produtividade (1)
      • Metodologias Ágeis (6)
    • Cursos (52)
    • Dicas (105)
    • Front-End (92)
    • IA (1)
    • Linux (6)
    • NodeJS (4)
    • Post do Leitor (9)
    • Python (5)
    • Seo (12)
    • Tecnologia (30)
      • ITIL (1)
      • Padrões de Projeto (4)
    • Testes (2)

    VEJA TAMBÉM

    Cursos
    12 de fevereiro de 20166 Mins Read

    1000 livros gratuitos sobre programação!

    Olha que dica bacana! A pagina só com livros sobre programação é mantida no GitHub…

    30 APIs Gratuitas para desenvolvedores

    Facebook X (Twitter) Instagram LinkedIn

    Type above and press Enter to search. Press Esc to cancel.

    Vá para versão mobile