"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 você pode usar o Grupo By to Pivot Data in MySQL?

Como você pode usar o Grupo By to Pivot Data in MySQL?

Postado em 2025-05-01
Navegar:878

How can you use GROUP BY to Pivot Data in MySQL?

girando resultados de consulta usando o grupo mysql por

em um banco de dados relacional, girando dados se referindo ao rearranjo de linhas e colunas para aprimorar a visualização . Aqui, abordamos um desafio comum: transformando dados de linha de linha para baseada em colunas, usando o grupo. Por cláusula, juntamente com as funções de agregação condicional, como soma ou caso. Vamos considerar a seguinte consulta:

SELECT DISTINCT d.data_timestamp
FROM data



explicação


A consulta recupera os valores exclusivos do data_timestamp da tabela de dados e agrupem os resultados por data_timestamp.

dentro de cada grupo, ele calcula a soma de Data_values ​​para o correspondente data_id (por exemplo, input_1 para data_id = 1). ] A saída da consulta é apresentada em um formato colunar, com cada data_timestamp associado à soma de Data_values ​​para o Data_id.

O MySQL também oferece métodos alternativos para girar dados. Essas abordagens incluem o uso da função if () ou junções de nível múltiplo. ,
    sum (if (data_id = 1, data_value, 0)) como 'input_1',
  • sum (if (data_id = 2, data_value, 0)) como 'input_2'
  • de
  • dados
  • grupo por
  • d.data_timestamp
  • order por
  • d.data_timestamp asc;

múltiplo-lie-lines

 

selecione

d.data_timestamp,

d01.data_value como 'input_1', d02.data_value como 'input_2' de

(& & &&]

selecione Distinct D.Data_Timestamp De data

) como d
join
dados como d01
em
d01.data_timestamp = d.data_timestamp e d01.data_id = 1
junção esquerda
Dados como d02
em
d02.data_timestamp = d.data_timestamp e d02.data_id = 2
orden by

d.data_timestamp asc; &&&] Conclusão

O grupo por mysql por cláusula fornece um mecanismo poderoso para a consulta de giro resultados. O caso, if (), e as técnicas de junção de nível múltiplo oferecem flexibilidade para lidar com dados e acomodar várias estruturas de dados. A escolha da abordagem ideal depende dos requisitos específicos e considerações de desempenho.

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