Conexión de columna bajo la instrucción GROUP BY en SQL
En SQL, una forma común de combinar o unir columnas basándose en una declaración GROUP BY es utilizar una combinación de funciones agregadas y operadores de cadena. Exploremos cómo lograrlo.
Considere la siguiente tabla de ejemplo:
ID | Usuario | Actividad | URL de página |
---|---|---|---|
1 | i | act1 | ab |
2 | i | act1 | cd |
3 | tú | act2 | xy |
4 | tú | act2 | st |
Para concatenar los valores de PageURL para cada usuario y grupo de actividad separados por comas, podemos utilizar la siguiente consulta:
SELECT [usuario], actividad, STUFF((SELECT ',' URL de la página DESDE el nombre de la tabla DONDE [usuario] = a. [usuario] AND actividad = a. actividad PARA LA RUTA XML ('')), 1, 1, '') COMO lista de URL DESDE el nombre de la tabla COMO GRUPO POR [usuario], actividad
Descomposición de consultas:
La tabla resultante tendrá el diseño deseado:
Usuario | Actividad | Lista de URL |
---|---|---|
Yo | acto1 | ab, cd |
tú | act2 | xy, st |
Este enfoque aprovecha el poder de las funciones agregadas y las operaciones de cadena para concatenar eficazmente valores de columna basados en operaciones GROUP BY, lo que lo convierte en una solución flexible para una variedad de tareas de manipulación de datos.
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