11/11/2013, 12:04
|
| | Fecha de Ingreso: noviembre-2013 Ubicación: Nuevo Leon
Mensajes: 70
Antigüedad: 11 años, 1 mes Puntos: 2 | |
Respuesta: Nueva duda en SQL tal vez sea muy sencilla pero no me queda claro. Cita:
Iniciado por Libras
Código SQL:
Ver originalSELECT * FROM( SELECT Nombre,Codigo,NumCta,isnull(cargo,0) AS cargo, isnull(abono,0) AS abono, ROW_NUMBER() OVER(partition BY codigo ORDER BY codigo ASC) AS rn FROM ( SELECT CTA.Nombre AS Nombre,S.Codigo AS Codigo,CTA.Codigo AS NumCta, SUM(CASE WHEN TipoMovto = 0 THEN Importe END) AS Cargo, SUM(CASE WHEN TipoMovto = 1 THEN Importe END) AS Abono FROM MovimientosPoliza AS M INNER JOIN Cuentas Cta ON Cta.Id = M.IdCuenta INNER JOIN SegmentosNegocio S ON Cta.Id = M.IdCuenta GROUP BY CTA.Nombre,Cta.Codigo,S.Codigo ) AS MovimientosPoliza ) AS t1 WHERE rn=1
prueba ese codigo y comentas :) Cita:
Iniciado por Libras columna m?? es columna RN y singnifica el numero de renglon, si investigaste un poco sobre row number veras que la funcion te ordena los registros y asigna un numero de renglon dependiendo de la particion que le indiques(en este caso para cada registro de codigo N le corresponde una numeracion del 1 al N digamos si tienes 2 registros con codigo 1 y otros 3 con codigo 2 entonces tendras 5 registros con sus respectivos rn en 1,2 y 1,2,3 el query lo que hace es obtener el primero de estos registros)
saludos!
MUCHAS GRACIAS AMIGO :3 YAYAYA ENTENDI ME LO IMAGINE PERO ME DEJE LLEVAR POR LA DIFERENCIA ENTRE RN Y M XD OSEA LA LETRA SIMPLEMENTE SEGUIRE LEYENDO MAS Y HACIENDO MAS EJERCICIOS CON HAVING Y ROW NUMBER, EN VERDAD GRACIAS NOS VEMOS.
__________________ Buen dia.
Jessy Rmz.
No seas como el caminante del desierto que sólo deja una huella; el conocimiento se alcanza con el tiempo y unas cuantas lunas. |