Contratos:
Código:
y clientesCREATE TABLE "Contratos" ( "Cfechainicio" date NOT NULL, "CCódigo" integer NOT NULL, "Cmonto" real NOT NULL, "EstadoContrato" boolean NOT NULL, cdnifirma bigint NOT NULL, "Cancelado" boolean NOT NULL DEFAULT false, CONSTRAINT "Firma" FOREIGN KEY (cdnifirma) REFERENCES "Clientes" (cdni) MATCH SIMPLE ON UPDATE NO ACTION ON DELETE NO ACTION, CONSTRAINT "C-Código" UNIQUE ("CCódigo") )
Código:
Este es mi INNER JOIN:CREATE TABLE "Clientes" ( cnbreyapellido character varying NOT NULL, cdni bigint NOT NULL, "cteléfono" bigint NOT NULL, clugar_trabajo character varying NOT NULL, cdomicilio character varying NOT NULL, "EstadoCliente" boolean NOT NULL, CONSTRAINT "Key3" PRIMARY KEY (cdni) )
SELECT *
FROM "Contratos" INNER JOIN "Clientes"
ON'Clientes.cdni'='Contratos.cdnifirma' ;
Est consulta asi como esta no devuele ninguna fila, mientras que aplicando un NATURAL JOIN y cambiando cdnifirma en Contratos a cdni
SELECT *
FROM "Contratos" NATURAL JOIN "Clientes" ;
devuelve el resultado que yo quiero.
Mi consulta es, esta mal definida la INNER JOIN? porque no obtengo el mismo resultado?
Ademas, si yo quiero seleccionar algunas columnas de la consulta, digamos cnbreyapellido, en el apartado de la respuesta obtengo una columna unknown?name
Gracias!