top 1
 
SELECT A.nombre,
 (SELECT TOP 1 telefono FROM Telefono FROM codigo_lugar = 1 AND codigo_cliente 
= A.codigo_cliente  ) AS casa, 
 (SELECT TOP 1 telefono FROM Telefono FROM codigo_lugar = 2 AND codigo_cliente 
= A.codigo_cliente  ) AS movil, 
 (SELECT TOP 1 telefono FROM Telefono FROM codigo_lugar = 3 AND codigo_cliente 
= A.codigo_cliente  ) AS tbjo
FROM cliente A



----- Original Message -----
From: "Miguel Beltran R." <[email protected]>
To: "oscar arocha" <[email protected]>
Cc: "José Fermín Francisco Ferreras" <[email protected]>, "Lista 
PostgreSQL" <[email protected]>
Sent: Lunes, 12 de Noviembre 2012 22:49:36
Subject: Re: [pgsql-es-ayuda] Relacionar tablas cliente y telefono

Nunca se me había ocurrido hacer una consulta dentro de una columna, pero que 
pasa si regresa mas de 1 registro. 

habra que probar 


El 9 de noviembre de 2012 10:58, oscar arocha < [email protected] > 
escribió: 


Saludos José, te comento que para poder visualizar la informacion de la manera 
que sedeas debes hacer una serie de subconsultas en en tu sentencia principal 
algo asi 


SELECT A. nombre, 
(SELECT telefono FROM Telefono FROM codigo_lugar = 1 AND codigo_cliente = A. 
codigo_cliente ) AS casa, 
(SELECT telefono FROM Telefono FROM codigo_lugar = 2 AND codigo_cliente = A. 
codigo_cliente ) AS movil, 

(SELECT telefono FROM Telefono FROM codigo_lugar = 3 AND codigo_cliente = A. 
codigo_cliente ) AS tbjo 

FROM cliente A 


Espero te pueda servir. 



El 9 de noviembre de 2012 12:13, José Fermín Francisco Ferreras < 
[email protected] > escribió: 






Buenos días!! 


Tengo 3 tablas (Cliente , Teléfono y Lugar) 


En la tabla cliente tengo 2 campos: Codigo_cliente y nombre 
En la tabla de Telefono tengo 4 campos: codigo,codigo_cliente,telefono, y 
codigo_lugar. 
En la tabla de Lugar tengo 2 campos: codigo_lugar,descripcion. 


En la tabla de cliente tengo los siguientes datos: 
codigo_cliente Nombre 
1 Fermin 
2 Miguelina 


En la tabla de Lugar tengo lo siguiente: 
Codigo_lugar descripcion 
1 casa 
2 movil 
3 trabajo 


En la tabla de telefono tengo lo siguiente: 


codigo codigo_cliente telefono codigo_lugar 
1 1 1234568 1 
2 1 8558544 3 
3 1 8745352 2 
4 2 3645458 3 
5 2 7566414 2 




Quisiera visualizar la informacion de la siguiente manera: 


Nombre telefono_casa telefono_movil telefono_trabajo 
Fermin 1234568 8745352 8558544 
Miguelina 7566414 3645458 




Se podrá mostrar la información de esta manera?? 

















ing. José Fermín Francisco Ferreras 
San Francisco de Macorís, Rep. Dom. 




-- 
Ing. Oscar Arocha 
CIV: 208.476 
Linux User: 556027 
tlf: 58-416-4257379 
twitter: @ArochaOscar 




-- 
________________________________________ 
Lo bueno de vivir un dia mas 
es saber que nos queda un dia menos de vida 

-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a