Tema: Select sql
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 11/05/2011, 04:20
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Select sql

Por la info que pasas creo que esta es la forma correcta de hacerlo, fijate que la relacion entre preguntas y respuesta se debe dar por esto tres campos

on
p.idPreguntas= r.pregunta
AND p.concurso = r.concurso
AND p.idioma = r.idioma

es la única diferencia que veo con tu consulta.

Tu estas haciendo la relacion solo por r.pregunta = p.idPreguntas cunado estos segun el E_R que muestras no son únicos ENUM(1,2,3)... como luego limitas al concurso 1 el resultado es el mismo

Con mi sentencia podrias listar todos los concursos y el resultado seria coherente

Código MySQL:
Ver original
  1. SELECT p.concurso,
  2. p.idPreguntas,
  3. p.descPregunta,
  4. r.descRespuesta,
  5. r.respuestaCorrecta
  6. FROM Preguntas p INNER JOIN Respuestas r
  7. ON p.idPreguntas= r.pregunta
  8. AND p.concurso = r.concurso
  9. AND p.idioma = r.idioma
  10. WHERE p.idioma=2;

Con tu sentencia si sacas el where concurso=1 el resultado te combinara preguntas y respuestas de distintos concursos...
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.