Ejemplo:
Tabla 1 -> nombres, apellidos, ciudad
Tabla 2 -> mote, país, ocupación
Y ordenarlo según mote y nombre, es decir que aparezcan mezcladas las dos tablas
Gracias!
|
|
#1 (permalink) |
![]() Fecha de Ingreso: enero-2006
Mensajes: 46
|
Mezclar tablas?
Ejemplo: Tabla 1 -> nombres, apellidos, ciudad Tabla 2 -> mote, país, ocupación Y ordenarlo según mote y nombre, es decir que aparezcan mezcladas las dos tablas Gracias! |
|
|
|
|
|
#2 (permalink) |
![]() Fecha de Ingreso: junio-2008
Ubicación: Roca Casterly
Mensajes: 77
|
Respuesta: Mezclar tablas?
Deberías mirarte la parte de los "join" en un manual de MySQL.
Pero concretamente en tu caso el código sería algo así:
Código:
Puedes añadir asc o desc al final para ordenar la agrupación, también puedes ver distinct para no obtener repeticiones en la salida.SELECT * FROM Tabla1 AS uno JOIN Tabla2 AS dos GROUP BY dos.mote,uno.nombre; |
|
|
|
|
|
#3 (permalink) |
![]() Fecha de Ingreso: enero-2006
Mensajes: 46
|
Respuesta: Mezclar tablas?
Muchas gracias,
pero entonces ahora, como hago para ordenar la informacion extraida de la BD. Cómo debería plantear el siguiente código? que hay mal?: <? $result = mysql_query("SELECT * FROM Tabla1 AS uno JOIN Tabla2 AS dos GROUP BY dos.mote,uno.nombre ASC"); while($r=mysql_fetch_array($result)) { $nombre = $r['nombre']; $ocupacion = $r['ocupacion']; $pais = $r['pais']; ... ... etc, etc Y después de eso, como puedo decir, si el que toca enseñar ahora es de la tabla 1, az esto: - Nombre: $nombre - Apellidos: $ apellidos etc Y si es de la tabla 2: -Mote: $mote -Ocupacion: $ocupacion etc No se si me explico correctamente, espero que sí. Muchas gracias |
|
|
|
|
|
#7 (permalink) |
![]() Fecha de Ingreso: enero-2006
Mensajes: 46
|
Respuesta: Mezclar tablas?
No se si me he explicado bien, lo que pretendo es hacer algo así, pero no se como:
Código PHP:
|
|
|
|
|
|
#8 (permalink) |
![]() Fecha de Ingreso: junio-2008
Ubicación: Roca Casterly
Mensajes: 77
|
Respuesta: Mezclar tablas?
Creo que no has acabado de entender el resultado de esa consulta: el resultado son filas ordenadas por mote - en caso de empate se mira el nombre - en las cuales hay TODOS los campos de esa "prioridad" de la Tabla1 y Tabla2, así que en tu $r tienes tanto $r['nombres'] como $r['mote'], así como los demás.
Sólo coge el que te interese en cada momento, sea de Tabla1 o Tabla2, ya que en $r tienes a ambos con los nombres de tu BD. En la siguiente pasada del bucle vuelves a tener lo mismo, sólo que con el siguiente orden de prioridad, es decir, el siguiente resultado de la ordenación por mote y nombre. De todas formas, yo sólo puse una consulta que creo que es lo que buscabas, si no lo has comprobado compruebalo en una consola MySQL insertando esa consulta directamente y viendo el resultado, y en todo caso si no entiendes estos temas de consultas que vas a usar, es mejor que mires en el manual y lo comprendas, que si no puedes tener algún problema después. |
|
|
|
![]() |
| Herramientas | |
| Desplegado | |
|
|