"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como selecionar combinações de valores distintos de várias colunas no MySQL?

Como selecionar combinações de valores distintos de várias colunas no MySQL?

Publicado em 17/11/2024
Navegar:472

How to Select Distinct Value Combinations from Multiple Columns in MySQL?

Selecionando valores distintos de múltiplas colunas no MySQL

Ao trabalhar com bancos de dados, muitas vezes é necessário recuperar combinações exclusivas de valores de múltiplas colunas. No entanto, o uso da palavra-chave DISTINCT nem sempre produz os resultados desejados. Este artigo explora uma abordagem alternativa para selecionar valores distintos de duas colunas em um banco de dados MySQL.

Considere a seguinte tabela chamada "foo_bar":

foobarra
ac
cf
da
ca
fc
ac
da
ac
ca
fc

Consultando esta tabela com a seguinte instrução SQL:

SELECT DISTINCT foo, bar FROM foo_bar;

produz o seguinte resultado:

foobar
ac
cf
da
ca
fc

Embora esta consulta garanta que apenas uma instância de cada combinação de valor exclusivo seja retornada, ela não elimina as redundâncias onde os valores são trocados nas duas colunas. Por exemplo, "a c" e "c a" são combinações distintas, mas se referem aos mesmos dados.

Para resolver esse problema, podemos usar a cláusula GROUP BY:

SELECT foo, bar FROM foo_bar GROUP BY foo, bar;

Esta consulta retorna o seguinte resultado:

foobar
ac
cf
da

Como você pode ver, a cláusula GROUP BY combina todas as linhas duplicadas em uma única linha, efetivamente eliminando as repetições e fornecendo combinações verdadeiramente distintas de valores das colunas foo e bar.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3