Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/02/2014, 10:02
ambichol
 
Fecha de Ingreso: febrero-2013
Ubicación: Lima
Mensajes: 301
Antigüedad: 11 años, 2 meses
Puntos: 5
Pregunta Encontrar incidencias en base de duplicados

hola,

tengo una consulta que por ahora se me hace un poco dificil de realizar, tengo una tabla resultante de un openrowset que me saca los registros duplicados de una base de acuerdo a unos criterios dados, pero a su vez, necesito actualizar un campo en donde indique el tipo de incidencia que presenta, por ejemplo de 10 columnas, 1 registros son iguales hasta la columna 7, luego los 3 ultimos son diferentes, en ese caso que me actualize un campo por ejemplo con 'incidencia 1'.

estuve tratando de realizarlo con este codigo, pero no respeta la regla y se actualiza toda mi tabla:
Código SQL:
Ver original
  1. DECLARE @pas1 VARCHAR(255)
  2. DECLARE @pas2 VARCHAR(255)
  3. DECLARE @NOMBRE VARCHAR(255)
  4. DECLARE @COUNT INT
  5. DECLARE @COUNTMAX INT
  6.  
  7. DROP TABLE #Lista
  8.  
  9. CREATE TABLE #Lista (serie INT IDENTITY(1,1), agente VARCHAR(255))
  10.  
  11. INSERT INTO #Lista (agente) SELECT DISTINCT nombre FROM INCIDENCIA_CTI
  12.  
  13. SET @COUNTMAX = (SELECT MAX(serie) FROM #Lista)
  14. SET @COUNT = 1
  15.  
  16. while (@COUNT <= @COUNTMAX )
  17. BEGIN
  18.  
  19. SET @NOMBRE = (SELECT agente FROM #Lista WHERE serie = @COUNT)
  20. SET @pas1 = (SELECT organizacion+id_empleado FROM INCIDENCIA_CTI WHERE nombre = @NOMBRE AND rn = '1')
  21. SET @pas2 = (SELECT organizacion+id_empleado FROM INCIDENCIA_CTI WHERE nombre = @NOMBRE AND rn = '2')
  22.  
  23. IF (@pas1 <> @pas2)
  24. BEGIN
  25. UPDATE INCIDENCIA_CTI SET tipo_incidencia = 'amarillo' WHERE nombre = @NOMBRE AND @pas1 <> @pas2
  26. END
  27.  
  28. SET @COUNT= @COUNT+1
  29. END

podrian indicarme que se esta haciendo mal...?? o alguna alternativa de solucion al caso...???
__________________
Lo que no se....tampoco creo saberlo....