Ver Mensaje Individual
  #20 (permalink)  
Antiguo 12/12/2013, 11:03
Avatar de Libras
Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Mostrar Inexistentes LEFT JOIN

Cita:
Iniciado por cristian_fg Ver Mensaje
La tabla Pagos... ha habido errores, debido a que los usuarios ingresaban 2 pagos iguales
Aqui el error es de aplicacion y de tus llaves en la tabla para evitar esto que se hace? se pone una llave primaria con el mes junto con el id(obvio si los pagos son completos en caso de que se puedan hacer pagos parciales es diferente y en caso de que fuera asi haces la llave primaria de 3 campos id,mes,pago porque no creo que alguien haga un pago el mismo mes de la misma cantidad :P) como solucionarlo sencillo

Código SQL:
Ver original
  1. CREATE TABLE #pagos
  2. (
  3. id INT,
  4. dni INT,
  5. apenom VARCHAR(20),
  6. ncuota INT,
  7. total INT
  8. )
  9.  
  10. INSERT INTO #pagos VALUES (1,20258741,'JUAN',1,200)
  11. INSERT INTO #pagos VALUES (2,20258741,'JUAN',4,200)
  12. INSERT INTO #pagos VALUES (3,20258741,'JUAN',4,200)
  13. INSERT INTO #pagos VALUES (3,27413413,'LUIS',3,200)
  14.  
  15. SELECT * FROM(
  16. SELECT ROW_NUMBER() OVER(partition BY apenom,dni,ncuota ORDER BY apenom) AS rn,* FROM #pagos
  17. ) AS t1 WHERE rn=1
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me