Select exclusivo de dos tablas.

13/04/2004 - 20:56 por Jose Antonio | Informe spam
SELECT CODIGO,NOMBRE FROM UNO

SELECT CODIGO,NOMBRE FROM DOS

necesito un select que me devuelva las filas de DOS que no esten en la tabla
UNO.

necesito un select que me devuelva las filas de UNO que no esten en la tabla
DOS y las filas de la tabla DOS que no estan en la tabla UNO.

debe ser muy sencillo, pero no hay manera de hacerlo.

Saludos.

Preguntas similare

Leer las respuestas

#1 Marcelo W. Lopez Cremona
13/04/2004 - 21:15 | Informe spam
Hola, desde ya existen varias maneras de resolver el problema aquí tienes
una de ellas.

DECLARE @uno table (sprueba varchar(20))
declare @dos table (stest varchar(20))
INSERT INTO @uno values('p1')
INSERT INTO @uno values('p2')
INSERT INTO @uno values('p3')
INSERT INTO @uno values('p4')
INSERT INTO @dos values('d1')
INSERT INTO @dos values('p3')
INSERT INTO @dos values('d3')
SELECT * FROM @uno u
WHERE not exists (select * from @dos where stest= u.sprueba)

SELECT * FROM @uno u
WHERE exists(select * from @dos WHERE stest=u.sprueba)

saludos
Marcelo W. López
;-)



"Jose Antonio" escribió en el mensaje
news:
SELECT CODIGO,NOMBRE FROM UNO

SELECT CODIGO,NOMBRE FROM DOS

necesito un select que me devuelva las filas de DOS que no esten en la


tabla
UNO.

necesito un select que me devuelva las filas de UNO que no esten en la


tabla
DOS y las filas de la tabla DOS que no estan en la tabla UNO.

debe ser muy sencillo, pero no hay manera de hacerlo.

Saludos.


Respuesta Responder a este mensaje
#2 Maximiliano D. A.
13/04/2004 - 21:28 | Informe spam
Hola, yo no usaria el Not Exist porque es lento, lento,lento!!

En lugar lo que yo haria es usar Join algo asi como

Select campos from tabla1 left join tabla2 on
tabla1.campoid=tabla2.campoid
where tabla2.campoid is null

Esto traerea las que no corresponden en la tabla2 y estan en la tabla1

Bye


Salu2
Maxi

Buenos Aires Argentina
Desarrollador Microsoft 3 Estrellas .NET

MSN:
Nunca consideres el estudio como una obligación sino como
una oportunidad para penetrar en el bello y maravillosos
mundo del saber.
- Albert Einstein



"Jose Antonio" escribió en el mensaje
news:
SELECT CODIGO,NOMBRE FROM UNO

SELECT CODIGO,NOMBRE FROM DOS

necesito un select que me devuelva las filas de DOS que no esten en la


tabla
UNO.

necesito un select que me devuelva las filas de UNO que no esten en la


tabla
DOS y las filas de la tabla DOS que no estan en la tabla UNO.

debe ser muy sencillo, pero no hay manera de hacerlo.

Saludos.







Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.655 / Virus Database: 420 - Release Date: 08/04/2004
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida