Ver Mensaje Individual
  #2 (permalink)  
Antiguo 23/02/2010, 09:46
Javichechu
 
Fecha de Ingreso: junio-2007
Mensajes: 327
Antigüedad: 17 años, 6 meses
Puntos: 0
Respuesta: Una cosulta SQL que no logro. Help

He intentado una consulta del siguiente modo, es decir, creando tantas relaciones contra tablas virtuales como campos OUx hay. Y a pesar de que me sale un número de registros coherente (3 o cuatro, que es lo qeu debería) sus datos están todos a null

Código:
SELECT     PETICIONES_CUOTAS.*
FROM         PETICIONES_CUOTAS LEFT OUTER JOIN
                      OU_USUARIOS ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS.OU1 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_1 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_1.OU2 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_3 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_3.OU4 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_4 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_4.OU5 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_5 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_5.OU6 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_6 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_6.OU7 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_7 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_7.OU8 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_8 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_8.OU9 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_9 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_9.OU10 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_10 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_10.OU11 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_11 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_11.OU12 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_12 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_12.OU13 RIGHT OUTER JOIN
                      OU_USUARIOS AS OU_USUARIOS_2 ON PETICIONES_CUOTAS.DPTO = OU_USUARIOS_2.OU3
WHERE     (OU_USUARIOS.OU1 = '00008125') OR
                      (OU_USUARIOS_1.OU2 = '00008125') OR
                      (OU_USUARIOS_2.OU3 = '00008125') OR
                      (OU_USUARIOS_3.OU4 = '00008125') OR
                      (OU_USUARIOS_4.OU5 = '00008125') OR
                      (OU_USUARIOS_5.OU6 = '00008125') OR
                      (OU_USUARIOS_6.OU7 = '00008125') OR
                      (OU_USUARIOS_7.OU8 = '00008125') OR
                      (OU_USUARIOS_8.OU9 = '00008125') OR
                      (OU_USUARIOS_9.OU10 = '00008125') OR
                      (OU_USUARIOS_10.OU11 = '00008125') OR
                      (OU_USUARIOS_11.OU12 = '00008125') OR
                      (OU_USUARIOS_12.OU13 = '00008125')

El parámetro 00008125 es un código de departamento que estoy usando para hacer la prueba. Me salen tres registros, pero ya digo, todos sus datos a null