Ver Mensaje Individual
  #13 (permalink)  
Antiguo 16/03/2011, 11:57
Avatar de SDEK
SDEK
 
Fecha de Ingreso: diciembre-2009
Ubicación: MX
Mensajes: 156
Antigüedad: 14 años, 4 meses
Puntos: 8
Respuesta: unir dos selects con cantidad de campos distintos

"La sentencia full outer join de SQL (como lenguaje de consulta) extrae todos los registros de las tablas relacionadas, independientemente de si sus relaciones aparecen o no en la otra tabla"

Si no tienes campos comunes, prueba generando un ROW_NUMBER() para cada consulta, por ejemplo:
Código SQL:
Ver original
  1. SELECT a.campo1,a.campo2,a.campo3,b.select2,c.select3
  2. FROM
  3. (
  4. SELECT ROW_NUMBER() OVER (ORDER BY Tabla1.campo1 ASC) AS id, Tabla1.campo1, Tabla1.campo2, Tabla1.campo3
  5. FROM Tabla1
  6. ) a
  7. FULL OUTER JOIN
  8. (
  9. SELECT ROW_NUMBER() OVER (ORDER BY Tabla2.campo1 ASC) AS id, Tabla2.campo1
  10. FROM Tabla2
  11. ) b ON b.id=a.id
  12. FULL OUTER JOIN
  13. (
  14. SELECT ROW_NUMBER() OVER (ORDER BY Tabla3.campo1 ASC) AS id, Tabla3.campo1
  15. FROM Tabla3
  16. ) c ON b.id=c.id
Saludos,
__________________
Tecnologías de la Información
Karel Priego
| @karelpriego

Última edición por SDEK; 16/03/2011 a las 11:58 Razón: resaltado de código agregado