Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   No obtengo el resutado esperado (https://www.clubdelphi.com/foros/showthread.php?t=16697)

CARSOFT_AR 07-12-2004 21:48:36

No obtengo el resutado esperado
 
Hola, tengo un problema al ejecutar una consulta que utiliza dos tablas,
la consulta tiene que devolver un resultado si cumple la condicion con cualquiera de las dos tablas, si la tabla maestro cumple con la condicion y la tabla detalle no tiene datos, no me devuelve ningun conjunto de datos, con lo cual esta mal, a que se debe, que cuando la tabla detalle esta vacia no me devuelve datos, y cuando tiene datos y si no cuimple con la condicion si, quisiera que me devuelva datos aunque la tabla detalle este vacia, gracias

ramiretor 08-12-2004 17:27:07

Hola:
No dices el motor que usas porque dependiendo de éste es como se arma la consulta. Lo que tienes que hacer es un outer join ( lo habré escrito bien?)entre tablas a fin de que te regrese los registros que están en la tabla maestro pero no en la de detalle.

Un saludo a todos y espero te sirva

CARSOFT_AR 09-12-2004 03:09:29

Querria saber sobre (OUTER JOIN, LEFT JOIN y RIGTH JOIN)
 
Hola, gracias por contestar, las tablas son paradox, y me podrias explicar bien lo de (OUTER JOIN, LEFT JOIN y RIGTH JOIN), gracias

C@Rsoft

unreal4u 26-12-2004 23:35:15

por lo que tengo entendido por los JOIN es lo siguiente: (por lo menos mysql lo toma asi)

ciudad LEFT JOIN personas
---- Muestra todas los ciudades. Si hay alguna ciudad en la que no viva ningún usuario igual lo muestra; por ejemplo:
Código:


tabla ciudad:
id_ciudad          ciudad
1                Santiago de Chile
2                Concepcion
3                Temuco
 
tabla personas
id_persona          nombre  id_ciudad
1                  Hola                2
2                  mundo                3
3                  chao                2
4                  mundo                3
 
Lo que muestra va a ser lo siguiente:
id_ciudad        ciudad        id_persona  nombre        id_ciudad
1                Santi...  NULL                NULL          NULL
2                Conc...        1        hola                  2
2                Conc...        3        chao                2
3                Temu...        2

etc


RIGHT JOIN hace todo lo contrario

INNER JOIN muestra si y solo si ambos campos están relacionados; así, con INNER JOIN la salida sería la misma de arriba, sólo que el primer registro NO se mostraría ...

Como eso es básicamente el INNER, LEFT y RIGHT JOIN.
PD: la tabla no está perfecta; pero es lo que hay ...

CARSOFT_AR 30-12-2004 21:18:16

Muchas gracias por responder , me quedo mas claro, FELIZ AÑO!!!!!!!


La franja horaria es GMT +2. Ahora son las 23:31:03.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi