Ver Mensaje Individual
  #8 (permalink)  
Antiguo 16/03/2011, 08:01
james-25
 
Fecha de Ingreso: julio-2004
Ubicación: Medellin - Colombia.
Mensajes: 12
Antigüedad: 20 años, 6 meses
Puntos: 0
Respuesta: consulta en BD relacional

Cordial saludo.

Que pena yo nuevamente con el mismo tema.

mira aca esta la relacion

cliente(cédula, nom1, nom2, ape1)

ctaaho(idaho, ctaaho, cédula)

ctacte(idcte, ctacte, cédula)

cédula; actuaria como llave foránea de las tablas ctacte y ctaaho.


CREATE TABLE cliente
(
cedula INT NOT NULL,
nom1 VARCHAR(13),
nom2 VARCHAR(13),
ape1 VARCHAR(13),
ape2 VARCHAR(13),
PRIMARY KEY(cedula)
) TYPE = INNODB;

CREATE TABLE ctaaho
(
idaho INT NOT NULL,
ctaahor INT,
cedula INT NOT NULL,
PRIMARY KEY(idaho),
INDEX (cedula),
FOREIGN KEY (cedula) REFERENCES cliente(cedula)
) TYPE = INNODB;


CREATE TABLE ctecta
(
idcte INT NOT NULL,
ctacte INT,
cedula INT NOT NULL,
PRIMARY KEY(idaho),
INDEX (cedula),
FOREIGN KEY (cedula) REFERENCES cliente(cedula)
) TYPE = INNODB;


Pero tengo la misma duda ;

A la tabla cliente le asigne a dos clientes

| cedula | nom1 | ape1 |
+---------+-------+-------
| 3215 | Juan | Andres |
| 7161 |Javier| Alvarez |
+---------+-------+-------

A la tabla ctaaho a un cliente le asigne una cta de ahorro de la siguiente manera:


| idaho | ctaahor | cedula |
| 1 | 456789 | 3215 |

cuando hago la siguiente consulta:

SELECT cliente.cedula, cliente.nom1, cliente.ape1, ctaaho.ctaahor FROM cliente, ctaaho

y el resultado de la consulta es la siguiente:

| cedula | nom1 | ape1 | ctaahor |
+---------+-------+-------+-------+-
| 3215 | Juan | Andres | 456789 |
| 7161 |Javier| Alvarez | 456789 |
+---------+-------+-------+-------+-

y el resultado que yo espero o quiero con la consulta seria la siguiente:

| cedula | nom1 | ape1 | ctaahor |
+---------+-------+-------+-------+-
| 3215 | Juan | Andres | 456789 |
| 7161 |Javier| Alvarez | NULL |
+---------+-------+-------+-------+-

Ya que solamente asigne una cuenta a un solo cliente en este caso el que es ta identificado con la cedula = 3215 y el de la cedula = 7161 deberia aparecer NULL o vacio., ya que no tiene cedula asociada.

muchas gracias y disculpe si he repetido la pregunta, pero aun tengo la duda.pese a que he intentado de muchas formas.. en base a las respuestas del foro...

espero haberne hecho entender con la pregunta..