Consulta SQL en la que se deben mostrar dos campos sustituidos por otros de una misma tabla.

Tenemos una tabla que tiene, p.ej., los siguientes campos: c1, c2, c3, c4, c5 y quiero hacer una búsqueda con ciertas condiciones (p. Ej. C1='xxxxx', ...) peero necesito que los campos c4 y c5 no se muestren y en su lugar se muestren sus equivalencias en otra tabla cuya estructura podría ser: t2c1(campo en el que buscaremos c4 y c5) t2c2(campo que quiero que se muestre en el resultado de la consulta).

Ejemplo:

El campo c4 podría contener el código de la provincia de nacimiento y el campo c5 el código de la provincia de residencia, y la otra tabla el código y el nombre de las provincias. Así en el resultado no veríamos los códigos sino los nombres de las provincias.

Es posible hacer una consulta SQL que me muestre este resultado?

Gracias.

1 Respuesta

Respuesta
1

Tienes que utilizar iner join para esta acción, trataré de explicar esto de la manera más simple posible (a mi parecer)

Tienes la tabla llamada dirección (con alias "a") y otra tabla llamada ciudad con (alias "b")
La tabla ciudad contiene la siguiente información:
cod_ciudad descripción
1 Madrid
2 Buenos aires
3 Bogotá
La tabla dirección tiene los siguientes registros
id_direccion calle id_ciudad
1 la calle 1 1
2 la calle 2 3
3 otra calle 2
4 calle final 1
la consulta sería la siguiente
"select a.id_direccion, a.calle, b.descripción from dirección a INNER JOIN ciudad b
on (a.id_ciudad=b.cod_ciudad)"
Si notas, en la consulta se hace referencia al campo b.descripción que no esta en la table dirección y la relación se hace en el inner join donde posterior a la sentencia ON hacemos la relación entre tablas.
Si existe relación cambiará el valor por el correspondiente en la tabla b.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas