Ver Mensaje Individual
  #1 (permalink)  
Antiguo 21/11/2010, 12:48
peter_21
 
Fecha de Ingreso: mayo-2010
Mensajes: 71
Antigüedad: 14 años, 5 meses
Puntos: 1
error en la consulta; resultados repetidos...

Hola,

estoy intentando hacer una consulta pero me saca mas datos de los deseados...

Os digo las tablas que entran en juego y relaciones y luego lo que quiero conseguir con la consulta.
Lo que esta en negrita y subrayado son las CP.
En rojo las claves foraneas

//Tabla1 donde estan las personas.
Tabla1: Personas(idJ,nombre,apellido1,pais,comunidad,club)

//Tabla 2, esta el identificador de un campeonato, el identificador de una persona, su categoria y su ranking. Es decir, una persona, participa en un campeonato en una determinada categoria y con un ranking
Tabla2: Participa(idJ,idC,nombre,idCategoria,ranking)

//Tabla3, listado de las direntes categorias
Tabla3: Categorias(idCategoria,sexo,peso)


Lo que quiero es que la consulta me muestre:
-El id, el nombre, el apellido,la categoria,club,comunidad,pais y ranking de una persona que participante en un determinado campeonato, por ejemplo el campeonato con idC=5!

Para eso, hago lo siguiente:

select j.idJ, j.nombre, c.peso, j.apellido1, j.club, j.comunidad_autonoma, j.pais, p.ranking from judokas j, categorias c, participa p where (j.idJ, c.idCategoria) in (select p.idJ, p.idCategoria from participa p where p.idC='5');

Pues bien, si solo hay 1 persona en la base de datos que participe en ese campeonato me lo muestra unas 83 veces!!!( si las he contado, y son 82 o 83...)

Como seria la consulta correcta?

//SOLUCIONADO