Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hola,
¿Cómo podría agrupar lo siguiente?:
Tengo una tabla con 3 campos que me muestra estos campos: Id, Pais, Prefijos y Consecutivos, necesito que me agrupe por cada prefijo los consecutivos, por ejemplo:
Id Pais Prefijo Consecutivo
456 Colombia 57 1
456 Colombia 57 4
456 Africa 27 9
Por ahora tengo: Id&','&Prefijo&'('&Consecutivo&')' con esto me trae por línea cada registro:
456,57(1)
456,57(4)
456 27(9)
Pero requiero que me quede así:
456,57(1,4)
456 27(9)
Es decir, que no me deje la información del prefijo 57 repetido, sino que me lo muestre una sola vez con sus respectivos consecutivos.
Agradezco me guíen por favor.
Hola Mónica:
La mezcla de las soluciones siempre es positiva, lo que he puesto yo combinado con lo que ha puesto Jordi ...
Tabla:
LOAD Id, Pais, Prefijo,
'(' & MaxString(Consecutivo) & ')' as Consecutivo
Group by Id, Pais, Prefijo;
LOAD Id,
Pais,
Prefijo,
IF (Id = Previous(Id) and Pais = Previous(Pais) and Prefijo= Previous(Prefijo),
Previous(Consecutivo) & ',' & Consecutivo,
Consecutivo ) as Consecutivo;
LOAD * INLINE [
Id, Pais, Prefijo, Consecutivo
456, colombia, 57, 1
456, colombia, 57, 4
456, africa, 27, 9
];
Genera los datos como tú querías.
Saludos
Joaquín
Hola Monica,
Eso se supone que lo quieres como resultado en el script?
Saludos,
Hola Jordi,
Sí, requiero hacerlo desde el script para generarlo diario y me lo guarde en en un archivo.
Saludos.
Hola Mónica:
Intenta esto
LOAD Id,
Pais,
Prefijo,
IF (Id = Previous(Id) and Pais = Previous(Pais) and Prefijo= Previous(Prefijo),
Previous(Consecutivo) & ',' & Consecutivo,
Consecutivo ) as Consecutivo
Saludos
Joaquín
Hola Monica,
Disculpa que ayer no te lo publiqué:
Table1:
LOAD * INLINE [
Id, Pais, Prefijo, Consecutivo
456, Colombia, 57, 1
456, Colombia, 57, 4
456, Africa, 27, 9
];
Table2:
LOAD Pais & ',' & Prefijo & ',' & Concat(Consecutivo & ',') as Estado_Final
Resident Table1
Group by Pais,Prefijo;
Drop table Table1
Saludos
Hola Mónica:
La mezcla de las soluciones siempre es positiva, lo que he puesto yo combinado con lo que ha puesto Jordi ...
Tabla:
LOAD Id, Pais, Prefijo,
'(' & MaxString(Consecutivo) & ')' as Consecutivo
Group by Id, Pais, Prefijo;
LOAD Id,
Pais,
Prefijo,
IF (Id = Previous(Id) and Pais = Previous(Pais) and Prefijo= Previous(Prefijo),
Previous(Consecutivo) & ',' & Consecutivo,
Consecutivo ) as Consecutivo;
LOAD * INLINE [
Id, Pais, Prefijo, Consecutivo
456, colombia, 57, 1
456, colombia, 57, 4
456, africa, 27, 9
];
Genera los datos como tú querías.
Saludos
Joaquín
Muchas gracias!, me dio la solución.
Muchas gracias!