Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Hola saludos;
Estoy Comenzando con Qlick y se me presenta el problema siguiente;
Tengo una tabla con tres campos ID, año Y OTRO
ID año OTR
1 2015 A
1 2017 B
1 2013 C
2 2016 H
2 2015 F
Quiero quedarme solo con registros con ID distintos pero con el mayor año, debería obtener:
año ID OTRO
1 2017 B
2 2016 H
Agradecería si alguien puede indicarme de como hacerlo.
Hola Francisco,
Un truco muy simple es quedarte con las máximas claves (año e ID) y luego hacer un LEFT JOIN con el resto de información del registro:
FINAL:
LOAD ID,
Max(año) AS año
FROM fichero.csv
GROUP BY ID;
LEFT JOIN (FINAL)
LOAD ID,
año,
OTRO
FROM fichero.csv;
Espero que te sirva...
Saludos,
H
Muchas gracias HectorLo probaré el Lunes ya que no dispongo de mi equipo en este momento, quisiera que me indicaras si lo que voy a hacer es correcto;La información está en una tabla excel así que1) hago un Load a esa tabla y lo etiqueto como fuente:fuente:load.....A partir de ahí pondré el código que me has indicado pero en lugar de FROM supongo que tengo que poner resident, quedaría mas o meno así:
FINAL:
LOAD ID,
Max(año) AS año
//FROM fichero.csv
resident fuenteGROUP BY ID;
LEFT JOIN (FINAL)
LOAD ID,
año,
OTRO
//FROM fichero.csv;
resident fuente;
Gracias y en cuanto lo pruebe te comento el resultado vía comunidad Qlick En domingo, 10 de junio de 2018 14:33:55 CEST, Muñoz Héctor <qcwebmaster@qlikview.com> escribió:
|
|
|
|
Eliminar duplicados
reply from Muñoz Héctor in Qlik en Español - View the full discussion
Hola Francisco,
Un truco muy simple es quedarte con las máximas claves (año e ID) y luego hacer un LEFT JOIN con el resto de información del registro:
FINAL:
LOAD ID,
Max(año) AS año
FROM fichero.csv
GROUP BY ID;
LEFT JOIN (FINAL)
LOAD ID,
año,
OTRO
FROM fichero.csv;
Espero que te sirva...
Saludos,
H
Reply to this message by replying to this email, or go to the message on Qlik Community |
Start a new discussion in Qlik en Español by email or at Qlik Community |
Following Eliminar duplicados in these streams: Inbox |
© 1993-2018 QlikTech International AB | Copyright & Trademarks | Privacy | Terms of Use | Software EULA
Gracias de nuevo Hector
He podido probar to solución y casi funciona , el fichero fuente es una hoja excel y el resultado es el siguiente
fichero original
ID año OTR
1 2015 A
1 2017 B
1 2013 C
2 2016 H
2 2015 F
resultado
1 2017 B
2 2017 H
es decir toma para todos los registros el mayor año de todos no el mayor año de cada uno.
El resultado que busco es:
1 2017 B
2 2016 H
En realidad como solo me interesan esos dos campos obtengo el mismo resultado erróneo sin utilizar LEFT JOIN
Perdon Hector si funciona, la tabla real tenia mas de 6000 registros y yo suponia que el año mayor no era igual en todos, me he metido en el fichero fuente y he eliminado algunas filas para que no todos tengan el mismo mayor año y funciona pero de la siguiente manera:
Data:
LOAD EMP_ID,
AÑO
FROM fichero excel;
New:
NoConcatenate
LOAD EMP_ID,
MAX(AÑO) AS AÑO
Resident Data
Group by EMP_ID
Order by EMP_ID;
DROP Table Data;
Me alegro!