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

Consulta entre varias tablas

Estas en el tema de Consulta entre varias tablas en el foro de SQL Server en Foros del Web. Buenas tardes tengan todos ustedes. el dia de hoy vengo con un problema entre varias tablas tabla 1 (cl_membresia,cl_status,cl_subestatus) todos valores int ejemplo (1,1,1) tabla ...
  #1 (permalink)  
Antiguo 04/08/2011, 14:33
Avatar de rikakashi  
Fecha de Ingreso: julio-2011
Mensajes: 226
Antigüedad: 12 años, 9 meses
Puntos: 33
Sonrisa Consulta entre varias tablas

Buenas tardes tengan todos ustedes. el dia de hoy vengo con un problema entre varias tablas

tabla 1
(cl_membresia,cl_status,cl_subestatus)
todos valores int
ejemplo
(1,1,1)

tabla 2
(cl_seccion, cl_clave, cl_nom)
2 int y un text
ejemplo
(111,1,activo)
(111,2,inactivo)
(112,1,admin)
(112,2,user)

necesito una consulta que me devuelva
(cl_membresia, cl_status, cl_substatus)
en la tabla 1 me devolveria
(1,1,1)
pero yo quiero que salga asi
(1,activo,admin)

saludos!! espero me puedan ayudar
mi jefe quiere el trabajo por catalagos y esta es la forma en que lo tengo pueden ayudarme
__________________
la programación es tan grande como la imaginación (+.+)
  #2 (permalink)  
Antiguo 04/08/2011, 15:11
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Consulta entre varias tablas

Código SQL:
Ver original
  1. CREATE TABLE #temp
  2. (
  3. membresia INT,
  4. STATUS INT,
  5. substatus INT
  6. )
  7.  
  8. CREATE TABLE #temp2
  9. (
  10. seccion INT,
  11. clave INT,
  12. nom VARCHAR(10)
  13. )
  14.  
  15. INSERT INTO #temp VALUES (1,1,1)
  16.  
  17. INSERT INTO #temp2 VALUES (111,1,'activo')
  18. INSERT INTO #temp2 VALUES (111,2,'inactivo')
  19. INSERT INTO #temp2 VALUES (112,1,'admin')
  20. INSERT INTO #temp2 VALUES (112,2,'user')
  21.  
  22.  
  23. SELECT t1.membresia,t2.nom,t3.nom FROM #temp AS t1
  24. LEFT JOIN #temp2 AS t2 ON (t1.STATUS=t2.clave AND t2.seccion=111)
  25. LEFT JOIN  #temp2 AS t3 ON (t1.STATUS=t3.clave AND t3.seccion=112)

Aunque este caso nada mas funciona para las 2 secciones que tienes, tendrias que poner algun otro campo en tu tabla 1 por ejemplo la seccion o algo asi..

Saludos!
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me
  #3 (permalink)  
Antiguo 05/08/2011, 11:59
Avatar de othix  
Fecha de Ingreso: mayo-2011
Ubicación: Guatemala
Mensajes: 92
Antigüedad: 12 años, 10 meses
Puntos: 9
Respuesta: Consulta entre varias tablas

Podrias probar con esta consultahaber si te sirve

select MAX(T1.CL_MEMBRESIA),T2.CL_NOM
from tabla1 AS T1
INNER JOIN TABLA2 AS T2 ON T2.CL_CLAVE=T1.CL_STATUS or T2.CL_CLAVE=T1.SUB_STATUS
GROUP BY T2.CL_NOM
__________________
"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas."

Etiquetas: tabla, tablas
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 05:40.