Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Selección en dos tablas siempre y cuando no coincida un valor

Estas en el tema de Selección en dos tablas siempre y cuando no coincida un valor en el foro de Mysql en Foros del Web. Buenas. Tengo una consulta un poco compleja (para mi) en la que me vendría bien una ayuda. La idea es seleccionar de dos tablas, pero ...
  #1 (permalink)  
Antiguo 07/04/2013, 13:27
liranan
Invitado
 
Mensajes: n/a
Puntos:
Selección en dos tablas siempre y cuando no coincida un valor

Buenas.
Tengo una consulta un poco compleja (para mi) en la que me vendría bien una ayuda.

La idea es seleccionar de dos tablas, pero comparando varios campos.
Cuento el ejemplo concreto para que sea más fácil de entender.

Hay dos tablas, una con una batería de preguntas

trivial_preguntas:
- id_pregunta
- pregunta
- respuesta1
- respuesta2
...

Y la otra, con una identificación de la partida que se está jugando, y las preguntas que han salido en esa partida

trivial_partidas:
-id_partida
-id_pregunta

La idea es, cada turno, seleccionar una pregunta de la tabla preguntas, cuya id no esté registrada ya en la tabla partidas con el mismo id de partida.
Es decir, la pregunta 1 puede salir en todas las partidas, pero solo una vez en cada una.

Muchas gracias de antemano por la ayuda. (También me vale si consideráis que habría una forma mejor de organizar las tablas)

Gonzalo.
  #2 (permalink)  
Antiguo 07/04/2013, 15:42
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: Selección en dos tablas siempre y cuando no coincida un valor

Código MySQL:
Ver original
  1. SELECT tp.id_pregunta, tpre.pregunta
  2.    FROM trivial_preguntas tp
  3.    LEFT JOIN trivial_partidas tpar
  4.       ON tpr.id_pregunta = tpar.id_pregunta
  5.  WHERE tpar.id_pregunta IS NULL AND tpar.id_partida = @id_partida
  #3 (permalink)  
Antiguo 07/04/2013, 15:57
liranan
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Selección en dos tablas siempre y cuando no coincida un valor

Muchas gracias Jurena, me ha servido perfectamente!

Etiquetas: tablas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:09.