Ver Mensaje Individual
  #1 (permalink)  
Antiguo 15/01/2009, 16:50
Avatar de normandos
normandos
 
Fecha de Ingreso: diciembre-2001
Mensajes: 216
Antigüedad: 22 años, 4 meses
Puntos: 0
Consula a tres tablas jodida

Hola tengo una Tabla PERSONA que tiene nombre direccion y otra tabla relacion con el telefono de la persona (pueden ser varios) y otra con mails (que pueden ser varios tambien).
Tabla Persona (persona_cod, persona_nombre, persona_direccion)
Tabla Telefono (persona_cod, persona_telefono)
Tabla Email (persona_cod, persona_email)

Tengo problemas en los select ya que me devuelve 6 filas completas si hay por ejemplo 2 telefonos y 3 mails dados de alta. Me retorna 1 fila por el registro que hay en Persona, 2 filas por los registros en Telefono y 3 filas por los registros en Email (en total 6). El problema es que repite los datos en cada registro que devuelve.
Como enlazo los datos a un gridview no los muestra correctamente.

Mi select:
GO
ALTER PROCEDURE [dbo].[MostrarPersona]
@cod int
AS
BEGIN
Select *
from Persona, Telefono, Email
Where Persona.persona_cod = @cod and Persona.persona_cod=Telefono.persona_cod and Persona.persona_cod = Email.persona_cod
END

que esta mal del select?
Gracias
__________________
"No importa lo que nos suceda sino cómo reaccionamos ante lo que nos sucede."

Presidente James E. Faust