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

Otra de dos tablas......

Estas en el tema de Otra de dos tablas...... en el foro de Mysql en Foros del Web. Hola amigos, Me encuentro con un problema que debe ser muy estúpido pero no le encuentro solución, he probado tambien mil cosas y he aplicado ...
  #1 (permalink)  
Antiguo 26/08/2008, 12:57
 
Fecha de Ingreso: enero-2008
Mensajes: 36
Antigüedad: 16 años, 3 meses
Puntos: 0
Pregunta Otra de dos tablas......

Hola amigos,

Me encuentro con un problema que debe ser muy estúpido pero no le encuentro solución, he probado tambien mil cosas y he aplicado varias respuestas de este y otros foros sin solución.. Aquí va:

Tengo una BD y dos tablas: tabla1 y tabla2. Quiero hacer una consulta para sacar datos solamente de tabla1, pero una de las condiciones del WHERE quiero que haga referencia a una columna de la tabla2.

Aquí va la consulta "modelo" que he aplicado:


SELECT datos1, datos2 FROM tabla1 WHERE datos3 = 'unacosa' AND tabla2.datos1 = 'otracosa' ORDER BY datos5 DESC LIMIT 10

Los datos en rojo son columnas de la tabla1 y los que están en azul, de la tabla2. Probando con esto el resultado. Haciendola así no me devuelve ningún valor pero he probado a añadir el nombre de la tabla seguido de un punto a todos los datosX a los que hago referencia y no me da los valores que yo quiero.

Por si me estuviera equivocando en la manera de plantearlo (que creo que si), lo que quiero hacer es sacar los datos de una tabla en base a dos condiciones: 1. que solo me devuelva filas en las que haya una columna en tabla1 que coincida con unacosa y 2. restringir los resultados aún mas haciendo que aquellas filas que tienen un valor de columna coincidente con el mismo valor en otra columna (llamada igual) en tabla2, solo me sean devueltas en caso de que el valor de una columna en tabla2 sea otracosa

Y lo siento pero tengo un cacao mental que ni me lo aguanto. Espero que esto ultimo se me haya entendido bien. Gracias a quien pueda ayudar.
  #2 (permalink)  
Antiguo 26/08/2008, 13:38
Avatar de Taldreakan  
Fecha de Ingreso: julio-2008
Mensajes: 128
Antigüedad: 15 años, 9 meses
Puntos: 2
Respuesta: Otra de dos tablas......

Prueba con esto:

SELECT tabla1.* FROM tabla1, tabla2 WHERE datos3 = 'unacosa' AND tabla2.datos1 = 'otracosa' ORDER BY datos5 DESC LIMIT 10;

Suerte.
  #3 (permalink)  
Antiguo 26/08/2008, 14:18
 
Fecha de Ingreso: enero-2008
Mensajes: 36
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Otra de dos tablas......

Cita:
Iniciado por Taldreakan Ver Mensaje
Prueba con esto:

SELECT tabla1.* FROM tabla1, tabla2 WHERE datos3 = 'unacosa' AND tabla2.datos1 = 'otracosa' ORDER BY datos5 DESC LIMIT 10;

Suerte.
Un buen rato de RELAX y tu comentario me han despejado la mente, así que GRACIAS!

No era exactamente eso sino que debía añadir un AND tabla1.datos6 = tabla2.datos2 en el WHERE. La veriedad de resultados que habia obtenido con las pruebas me habian despistado por completo

Saludos!
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 14:51.