INTERSECT y EXCEPT

12/12/2007 - 16:50 por Alhambra Eidos Kiquenet | Informe spam
Hola,

INTERSECT y EXCEPT, son nuevos operadores de SQL Server 2005.

Tengo SQL server 2000, ¿cómo se podría hacer lo que hacen esos operadores
teniendo mssql2000 ??

Saludos y gracias de antemano.


http://www.alhambra-eidos.es/web2005/index.html
www.kiquenet.net
http://www.setbb.com/putainformatic...opic.php?p„3
www.trabajobasura.com/solusoft

Preguntas similare

Leer las respuestas

#1 Alfredo Novoa
12/12/2007 - 17:11 | Informe spam
Hola,

On Wed, 12 Dec 2007 07:50:11 -0800, Alhambra Eidos Kiquenet
wrote:

INTERSECT y EXCEPT, son nuevos operadores de SQL Server 2005.

Tengo SQL server 2000, ¿cómo se podría hacer lo que hacen esos operadores
teniendo mssql2000 ??



INTERSECT lo puedes simular con un join poniendo todos los atributos
en la clausula ON.

Con EXCEPT tendrías que usar NOT IN


Saludos
Alfredo
Respuesta Responder a este mensaje
#2 Alfredo Novoa
12/12/2007 - 17:15 | Informe spam
On Wed, 12 Dec 2007 17:11:05 +0100, Alfredo Novoa
wrote:

INTERSECT y EXCEPT, son nuevos operadores de SQL Server 2005.

Tengo SQL server 2000, ¿cómo se podría hacer lo que hacen esos operadores
teniendo mssql2000 ??



INTERSECT lo puedes simular con un join poniendo todos los atributos
en la clausula ON.

Con EXCEPT tendrías que usar NOT IN



Me olvidaba de decir que si hay nulos todas estas equivalencias se van
a la porra, como casi siempre.


Saludos
Alfredo
Respuesta Responder a este mensaje
#3 Gux (MVP)
12/12/2007 - 17:21 | Informe spam
Usted puede implementar esas operaciones de conjunto de muchas maneras.

En este artículo donde se comparan las posibilidades de Oracle versus SQL
Server usted tiene ejemplos de cómo implementar un INTERSECT y un MINUS de
Oracle usando [NOT] EXISTS.

Migrating Oracle Databases to SQL Server 2000
http://www.akadia.com/services/sqlsrv2ora.html

Lea en la sección "SQL language support" "SELECT statements".

Gustavo Larriera, Microsoft MVP
https://mvp.support.microsoft.com/profile/gux
Este mensaje se proporciona tal como es, sin garantías de ninguna clase.



"Alhambra Eidos Kiquenet" wrote:

Hola,

INTERSECT y EXCEPT, son nuevos operadores de SQL Server 2005.

Tengo SQL server 2000, ¿cómo se podría hacer lo que hacen esos operadores
teniendo mssql2000 ??

Saludos y gracias de antemano.


http://www.alhambra-eidos.es/web2005/index.html
www.kiquenet.net
http://www.setbb.com/putainformatic...opic.php?p„3
www.trabajobasura.com/solusoft

Respuesta Responder a este mensaje
#4 Alejandro Mesa
12/12/2007 - 19:18 | Informe spam
Alhambra Eidos Kiquenet,

Puedes usar el operador EXISTS para simular ambos operadores. Ten en cuenta
que si las columnas aceptan valor NULL, entonces debes usar IS NULL para cada
lado de los conjuntos. Ambos operadores devuelven valores unicos, osea filas
no repetidas por lo que tambien necesitamos usar DISTINCT.

DECLARE @t1 TABLE (c1 int)
DECLARE @t2 TABLE (c1 int)

INSERT INTO @t1 VALUES(NULL)
INSERT INTO @t1 VALUES(NULL)
INSERT INTO @t1 VALUES(2)
INSERT INTO @t1 VALUES(2)
INSERT INTO @t1 VALUES(5)
INSERT INTO @t1 VALUES(7)

INSERT INTO @t2 VALUES(NULL)
INSERT INTO @t2 VALUES(1)
INSERT INTO @t2 VALUES(2)
INSERT INTO @t2 VALUES(3)

(SELECT c1 FROM @t1)
INTERSECT
(SELECT c1 FROM @t2)

SELECT DISTINCT *
FROM @t1 AS t1
WHERE EXISTS (
SELECT *
FROM @t2 AS t2
WHERE (t2.c1 = t1.c1) OR (t2.c1 IS NULL AND t1.c1 IS NULL)
)

(SELECT c1 FROM @t1)
EXCEPT
(SELECT c1 FROM @t2)

SELECT DISTINCT *
FROM @t1 AS t1
WHERE NOT EXISTS (
SELECT *
FROM @t2 AS t2
WHERE (t2.c1 = t1.c1) OR (t2.c1 IS NULL AND t1.c1 IS NULL)
)
GO


AMB


"Alhambra Eidos Kiquenet" wrote:

Hola,

INTERSECT y EXCEPT, son nuevos operadores de SQL Server 2005.

Tengo SQL server 2000, ¿cómo se podría hacer lo que hacen esos operadores
teniendo mssql2000 ??

Saludos y gracias de antemano.


http://www.alhambra-eidos.es/web2005/index.html
www.kiquenet.net
http://www.setbb.com/putainformatic...opic.php?p„3
www.trabajobasura.com/solusoft

email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida