PDA

Ver la Versión Completa : Dudas con Inner Join


Ignacio
27-11-2003, 02:24:24
En un Qry necesito, mediante Inner Join enlazar una tabla dos veces. Cómo se hace?
Pongo el código de mi caso.
Trataré de representarlo con un ejemplo sencillo.


Select *
From Clientes
Inner Join Categorias on (TipoCAT=TipocategoriaCLI)
Inner Join Categorias on (NumeroCAT=NumerocategoriaCLI)

--------
La terminación CLI está dentro de Clientes y la terminación CAT está dentro de Categorias.

__cadetill
27-11-2003, 11:14:47
a lo mejor me equivoco, pero no sería...


Select *
From Clientes
Inner Join Categorias on (TipoCAT=TipocategoriaCLI and
NumeroCAT=NumerocategoriaCLI)

delphi.com.ar
27-11-2003, 13:34:29
Por lo que veo tu hilo se puede interpretar de varias formas, cadetill te respondió por si tu quieres enlazar una tabla por dos campos. Pero a mi entender tu pregunta es si tienes dos campos que se pueden relacionar con dos registros diferentes de otra tabla, y quieres mostrar sus relaciones:

SELECT *
FROM CLIENTES
INNER JOIN CATEGORIA CATEGORIA1 ON CLIENTES.ID_CATEGORIA1 = CATEGORIA1.ID_CATEGORIA
INNER JOIN CATEGORIA CATEGORIA2 ON CLIENTES.ID_CATEGORIA2 = CATEGORIA2.ID_CATEGORIA


Saludos!

Ignacio
28-11-2003, 03:09:59
Todo un éxito !!!
Lo necesitaba mucho. Muchísimas gracias.

Si queres saber para qué lo necesitaba, te explico:

Un registro de una tabla de movimientos de valores tiene un campo con la Moneda del movimiento (Dolar, Peso u otro), otro campo con el numero de fecha de la cotizacin de cualquier moneda. En otra tabla tengo la historia de los valores de todas las monedas que se va armando día a día. En cada registro hay un número único, el numero de la moneda correspondiente y el valor de dicha moneda en ese día.
Si pretendo saber el valor de un movimiento pero NO en su moneda original, sino en otra, es nesesario tener el registro del movimiento enlasado con el valor de su moneda original y con el valor de la moneda a la que quiero convertirlo. Ambos valores residen en la misma tabla.

Espero no haber aburrido.

Chau.