pivotando resultados de consulta usando el grupo mySQL mediante
en una base de datos relacional, los datos giratorios se refieren al reorganización de las filas y columnas para mejorar la visualización de datos. Aquí, abordamos un desafío común: transformar los datos de la fila basado en la fila basado en columnas usando el grupo por.
consulta
para pivotar los datos, podemos emplear el grupo por cláusula junto con funciones de agregación condicional, como suma o caso. Consideremos la siguiente consulta:
seleccione
d.data_timestamp,
sum (caso cuando data_id = 1 entonces data_value el más 0 end) como 'input_1',
sum (case cuando data_id = 2 entonces data_value el más 0 final) como 'input_2'
de [] de [] data
grupo por
d.data_timestamp
orden por
d.data_timestamp data_timestamp.
Dentro de cada grupo, calcula la suma de data_values para el data_id correspondiente (e.g., input_1 para data_id = 1).la función de suma () maneja los valores faltantes de forma predeterminada a 0 para valores null. con la suma de data_values para los enfoques alternativos
SUM 2, data_value, 0)) como 'input_2' de data
grupo pord.data_timestamp
orden pord.data_timestamp Se unen
select
en
d.data_timestamp,
d01.data_value como 'input_1',
d02.Data_value como 'input_2'
de
(
seleccione D.DATIMS Desde datos
) como d
izquierda unirse
data como d01d01.data_timestamp = d.data_timestamp y d01.data_id = 1 izquierda data como d02
d02.dates d02.data_id = 2orden por
d.data_timestamp El caso, IF () y las técnicas de unión de nivel múltiple ofrecen flexibilidad para manejar datos y acomodar varias estructuras de datos. Elegir el enfoque óptimo depende de los requisitos específicos y las consideraciones de rendimiento.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3