PDA

Ver la Versión Completa : problema con not in


galmacland
16-03-2005, 19:36:43
hola, tengo el siguiente problema, estoy intentando actualizar una tabla con la informacion de otra, ejecutando una consulta con not in, la tabla de la que voy a extraer la informacion tiene unos cientos de registros nuevos mas que la otra, la consulta para extraer los valores que no estan seria asi:

select * from tabla1 where campo not in (select campo from tabla 2)

pero no me devuelve ningun resultado, no se porque,
la tabla1 tiene unos 120 451 registros y la tabla2 unos 120 090

utilizo sql server como administrador, agradeceria cualquier ayuda....

delphi.com.ar
16-03-2005, 19:48:18
pero no me devuelve ningun resultado, no se porque,
la tabla1 tiene unos 120 451 registros y la tabla2 unos 120 090 :confused: :confused: :confused:


No tendrás problemas con los nombres de los campos, ya que en tu ejemplo nombraste los dos como "campo" ????
Porque no subes el Sql original?

galmacland
16-03-2005, 19:54:16
pues te dire que lo he probado con el tabla.campo y no me funciona, me repite el mismo resultado unas 500 veces, y de todas formas el campo tiene el mismo nombre en una tabla como en la otra, por eso en la subconsulta hago un from....

delphi.com.ar
16-03-2005, 20:05:51
No entiendo cual es el resultado, ¿¿porque no nos muestras el SQL??

galmacland
16-03-2005, 20:17:45
select * from codigos where codigo not in (select codigo from productos)

me deberia devolver unos 300 registros aprox. pero nada..... :confused: :

delphi.com.ar
16-03-2005, 20:24:06
yo en ese caso pondría los alias o nombres:select * from codigos where codigo not in (select productos.codigo from productos)
Otra opción es mediante el uso del EXISTS

SELECT *
FROM CODIGOS
WHERE NOT EXIST (SELECT 1
FROM PRODUCTOS
WHERE CODIGOS.CODIGO = PRODUCTOS.CODIGO)


Saludos!

galmacland
16-03-2005, 20:53:28
la sintaxis esta mal

delphi.com.ar
16-03-2005, 21:08:09
la sintaxis esta mal
:confused: :confused: :confused:

Ponele un poco de ganas!

galmacland
16-03-2005, 21:18:48
thanks guys