Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » SQL Server »

Saber los Id libres

Estas en el tema de Saber los Id libres en el foro de SQL Server en Foros del Web. Hola a todos, Tengo una consulta que me está matando, tengo dos tablas: Ubicaciones: - IdUbicacion - Nombre RelacionesUbicacion: - IdRelacion - IdUbicacion - IdAlmacen ...
  #1 (permalink)  
Antiguo 02/11/2005, 05:31
Avatar de pempas  
Fecha de Ingreso: diciembre-2003
Ubicación: Barcelona
Mensajes: 985
Antigüedad: 20 años, 4 meses
Puntos: 6
Saber los Id libres

Hola a todos,

Tengo una consulta que me está matando, tengo dos tablas:

Ubicaciones:
- IdUbicacion
- Nombre

RelacionesUbicacion:
- IdRelacion
- IdUbicacion
- IdAlmacen

*********************************************
En un formulario selecciono el almacen al que quiero asignar ubicaciones y quiero que me muestre las ubicaciones asignadas a ese almacén y que además estén libres, es decir, las ubicaciones que no tienen ningún almacén asignado, no lo consigo...

La consulta que tengo ahora es esta:

Cita:
SQL = "Select Ubicaciones.Nombre From Ubicaciones Inner Join RelacionesUbicacion " _
& "On (Ubicaciones.IdUbicacion=RelacionesUbicacion.IdUbi cacion) Where" _
& " RelacionesUbicacion.IdAlmacen=" & Almacen
Me falta la parte de las ubicaciones libres, a ver si alguien me puede ayudar.

Gracias desde ya!
  #2 (permalink)  
Antiguo 03/11/2005, 01:42
Avatar de pempas  
Fecha de Ingreso: diciembre-2003
Ubicación: Barcelona
Mensajes: 985
Antigüedad: 20 años, 4 meses
Puntos: 6
¿Nadie puede ayudarme?, estoy desesperado...
  #3 (permalink)  
Antiguo 03/11/2005, 10:45
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Código:
Select 
	Ubicaciones.Nombre 
From 
	Ubicaciones left Outer Join RelacionesUbicacion 
On 
	(Ubicaciones.IdUbicacion=RelacionesUbicacion.IdUbicacion) 
Where 
	RelacionesUbicacion.IdAlmacen= @IdAlmacen  OR    -- Ubicaciones de almacen indicado
	RelacionesUbicacion IS NULL                      -- Ubicaciones libres
Oye y lo ocupas en la misma instruccion... tal vez seria mejor que lo hicieras en dos consultas... ya sea creando un store procedure que te traiga de forma separada los dos tipos de info...

  #4 (permalink)  
Antiguo 08/11/2005, 01:59
Avatar de pempas  
Fecha de Ingreso: diciembre-2003
Ubicación: Barcelona
Mensajes: 985
Antigüedad: 20 años, 4 meses
Puntos: 6
Muchas gracias,

Funciona a la perfección, ¿me podrías explicar que hace el "left Outer Join" que sea diferente al "Inner Join"?

Muchas gracias desde ya!
  #5 (permalink)  
Antiguo 08/11/2005, 09:01
Avatar de Andres95
Colaborador
 
Fecha de Ingreso: diciembre-2004
Mensajes: 1.802
Antigüedad: 19 años, 4 meses
Puntos: 38
Espero te sea de utilidad...

un saludo.

http://www.dbasupport.com.mx/index.p...d=83&Itemid=56
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:40.