Ver Mensaje Individual
  #2 (permalink)  
Antiguo 03/03/2014, 11:33
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: Cambio en Estructura de Tabla

eso no es cambiar la estructura de tu tabla, solo estas almacenandola de manera diferente, tu problema se resuelve con:

Código SQL:
Ver original
  1. CREATE TABLE #temp
  2. (
  3. nombre VARCHAR(20),
  4. apellido VARCHAR(20),
  5. fecha datetime,
  6. id VARCHAR(20)
  7. )
  8.  
  9. INSERT INTO #temp VALUES ('Jose','Perez','12-02-1960','PER3014')
  10. INSERT INTO #temp VALUES ('Jose','Perez','12-02-1960','PER5471')
  11. INSERT INTO #temp VALUES ('Maria','Lopez','10-04-1950','PER1047')
  12. INSERT INTO #temp VALUES ('Maria','Lopez','10-05-1950','PER3472')
  13.  
  14. SELECT t1.nombre,t1.apellido,t1.fecha,t2.id AS idperprincipal,t1.id idpersecundario FROM(
  15. SELECT *,ROW_NUMBER() OVER(partition BY nombre,apellido ORDER BY nombre) AS rn  FROM #temp) AS t1
  16. LEFT JOIN (SELECT *,ROW_NUMBER() OVER(partition BY nombre,apellido ORDER BY nombre) AS rn  FROM #temp) AS t2 ON (t1.nombre=t2.nombre AND t1.apellido=t2.apellido AND t1.rn=t2.rn+1)
  17. WHERE t2.nombre IS NOT NULL

saludos compa
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me