Ir al contenido


Foto

Clausula UNION sin duplicados


  • Por favor identifícate para responder
2 respuestas en este tema

#1 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 05 noviembre 2012 - 10:37

A ver si me explico.

Tengo dos consultas con estructura identica, necesito unir los datos y lo hago fácilmente con un UNION.......

SELECT
    A.CAMPO1,
    A.CAMPO2,
    T.CAMPO1,
    T.CAMPO2,
    T.CAMPO3

FROM TABLA A
INNER JOIN TABLA2 T ON T.ID = A.ID

UNION ALL

SELECT
    A1.CAMPO1,
    A1.CAMPO2,
    T1.CAMPO1,
    T1.CAMPO2,
    T1.CAMPO3

FROM TABLA A1
INNER JOIN TABLA2 T1 ON T1.ID = A1.ID


El problema es que quiero que en la consulta no muestre los registros duplicados, ¿ alguien sabe como hacerlo sin necesidad de procedimientos almacenados ?

Saludos
  • 0

#2 poliburro

poliburro

    Advanced Member

  • Administrador
  • 4.945 mensajes
  • LocationMéxico

Escrito 05 noviembre 2012 - 10:49

Cambia UNION ALL por UNION amigo... es todo lo que necesitas

  • 0

#3 egostar

egostar

    missing my father, I love my mother.

  • Administrador
  • 14.448 mensajes
  • LocationMéxico

Escrito 05 noviembre 2012 - 10:50

Gracias a Fenareth y a Edgar he encontrado la solución :).

SELECT
    A.CAMPO1,
    A.CAMPO2,
    T.CAMPO1,
    T.CAMPO2,
    T.CAMPO3

FROM TABLA A
INNER JOIN TABLA2 T ON T.ID = A.ID

UNION

SELECT
    A1.CAMPO1,
    A1.CAMPO2,
    T1.CAMPO1,
    T1.CAMPO2,
    T1.CAMPO3

FROM TABLA A1
INNER JOIN TABLA2 T1 ON T1.ID = A1.ID


Sólo eliminé ALL del UNION y listo, ya no muestra duplicados.

Gracias.
  • 0




IP.Board spam blocked by CleanTalk.