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

Problema con consultas simultaneas

Estas en el tema de Problema con consultas simultaneas en el foro de Bases de Datos General en Foros del Web. Pues bien, estoy intentando hacer una consulta a dos tablas a la vez(tabla1 y tabla2) lo estoy haciendo de la manera siguiente: $sql="SELECT tabla1.campo,tabla2.campo FROM ...
  #1 (permalink)  
Antiguo 16/08/2004, 15:24
 
Fecha de Ingreso: agosto-2004
Mensajes: 11
Antigüedad: 19 años, 8 meses
Puntos: 0
Exclamación Problema con consultas simultaneas

Pues bien, estoy intentando hacer una consulta a dos tablas a la vez(tabla1 y tabla2) lo estoy haciendo de la manera siguiente:

$sql="SELECT tabla1.campo,tabla2.campo FROM tabla1 , tabla2";
$result=mysql_query($sql,$conecta);
while ($datos= mysql_fetch_array($result))
{
echo"
$datos[0]
<br>
$datos[1]
<br>
";
}
bien, esa instruccion la ejecuta sin problemas, el problema me viene cuando dentro del bucle intento mostrar los valores que estan en el array $datos. Tal y como me esta hecho eso me muestra:


dato1(tabla1)

dato1(tabla2)

dato2(tabla1)

dato1(tabla2)

dato3(tabla1)

dato1(tabla2)

dato1(tabla1)

dato2(tabla2)

dato2(tabla1)

dato2(tabla2)

dato3(tabla1)

dato2(tabla2)

dato1(tabla1)

dato3(tabla2)

dato2(tabla1)

dato3(tabla2)

dato3(tabla1)

dato3(tabla2)

Se que es un cacao mostrarlo asi, pero no se como explicarlo. Tan solo hay 3 datos en cada tabla y me muestra 18 datos y ordenados de una manera muy extraña, a ver si me podeis decir como seleccionar dentro del array los datos que yo quiera. Muchas gracias

Última edición por Damian_J; 16/08/2004 a las 15:26
  #2 (permalink)  
Antiguo 16/08/2004, 15:57
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 9 meses
Puntos: 105
No tienes un Where en tu consulta, es por eso que solo te juntan los datos no las filtras.
Especifica tu consulta sql.


Saludos
Gildus
__________________
.: Gildus :.
  #3 (permalink)  
Antiguo 16/08/2004, 16:12
 
Fecha de Ingreso: agosto-2004
Mensajes: 11
Antigüedad: 19 años, 8 meses
Puntos: 0
perdona pero desde cuando una consulta necesita llevar where obligatoriamente? yo no quiero ponerle ninguna condicion a la consulta, quiero coger todos los datos, como ya he puesto en el post tan solo hay 3 datos en cada tabla, y si son dos tablas es = a 6 datos, y me muestra 18. Ayudenme por favor
  #4 (permalink)  
Antiguo 17/08/2004, 02:31
 
Fecha de Ingreso: agosto-2003
Mensajes: 43
Antigüedad: 20 años, 8 meses
Puntos: 0
Tal cual realizas tu consulta, mysql muestra todas las combinaciones posibles (que tomadas de 2 en 2 son 18 exactamente).
Una posible solución sería (suponiendo que tengas algún campo en las tablas que sirva de índice):
Código PHP:
$sql="SELECT tabla1.campo,tabla2.campo FROM tabla1 , tabla2 WHERE tabla1.id=tabla2.id"
__________________
pwmcorg
  #5 (permalink)  
Antiguo 17/08/2004, 11:14
Avatar de gildus  
Fecha de Ingreso: agosto-2003
Mensajes: 1.495
Antigüedad: 20 años, 9 meses
Puntos: 105
Hola Damian_J , como te dije, si lo que quieres es juntar toda la data de las dos tablas te ban ha salir com te dijo pablomola.

Cual es el proposito de tu consulta, por ejemplo puedes postear los datos de las dos tablas y luego añade el resultado que quieres que muestre, asi mejor te podemos ayudar.

Saludos
__________________
.: Gildus :.
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 10:08.