Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO]Ordenar SELECT por campo de otra tabla

Estas en el tema de [SOLUCIONADO]Ordenar SELECT por campo de otra tabla en el foro de PHP en Foros del Web. Tengo una tabla A y una tabla B. En tabla A están los campos: #CodA #CodB -- Foránea de la tabla B Categoria Nivel Y ...
  #1 (permalink)  
Antiguo 17/05/2010, 02:58
 
Fecha de Ingreso: mayo-2010
Mensajes: 52
Antigüedad: 14 años, 6 meses
Puntos: 0
[SOLUCIONADO]Ordenar SELECT por campo de otra tabla

Tengo una tabla A y una tabla B.

En tabla A están los campos:
#CodA
#CodB -- Foránea de la tabla B
Categoria
Nivel

Y en la B están:
#CodB
Usuario


Y quiero hacer lo siguiente:

Código SQL:
Ver original
  1. SELECT * FROM a WHERE Categoria='$categoria' AND Nivel='$nivel' ORDER BY

Y ahora tendría que ordenarlo por el campo 'Usuario' de la tabla B.

He probado con un ORDER BY (SELECT usuario FROM B WHERE codB='$codb')
pero tampoco me funciona.

El código que tengo es este(es mas completo pero solo he puesto el trozo que nos compete):

Código PHP:
Ver original
  1. $sql= mysql_query("SELECT * FROM A WHERE categoria= '$categoria' AND nivel= '$nivel'");
  2. while($row= mysql_fetch_array($sql))
  3. {
  4.     $codB= $row['codB'];
  5.     $codA= $row['codA'];
  6.  
  7.  
  8. $sql= mysql_query("SELECT * FROM A WHERE categoria= '$categoria' AND nivel= '$nivel' ORDER BY (SELECT usuario FROM B WHERE codB='$codB')");
  9.  
  10.     while($row= mysql_fetch_array($sql))
  11.     {
  12.        $codB= $row['codB'];
  13.        $codA= $row['codA'];
  14.    
  15.  
  16.  
  17.       Por aquí ya se mostrarían los datos...
  18.     };
  19. };

De manera que al final, me muestre los datos ordenados por usuario.

Muchas gracias ;).

Última edición por Weahl; 18/05/2010 a las 02:33
  #2 (permalink)  
Antiguo 17/05/2010, 05:06
Avatar de Synkronice  
Fecha de Ingreso: octubre-2007
Ubicación: Madrid
Mensajes: 831
Antigüedad: 17 años, 1 mes
Puntos: 48
Respuesta: Ordenar SELECT por campo de otra tabla

Deberías consultar en el foro de MySQL.

Saludos!
__________________
El problema de nuestra época consiste en que sus hombres no quieren ser útiles sino importantes.

Winston Churchill
  #3 (permalink)  
Antiguo 17/05/2010, 06:29
 
Fecha de Ingreso: mayo-2010
Mensajes: 52
Antigüedad: 14 años, 6 meses
Puntos: 0
Respuesta: Ordenar SELECT por campo de otra tabla

Mil disculpas, es que abrí otro hilo sobre PHP y me debí de confundir.

Aun así, ya encontré la solución, por si alguien lo mueve a SQL pues que se vea.

Tenía que hacer una consulta con INNER JOIN tal que así:

Código MySQL:
Ver original
  1. SELECT * FROM A INNER JOIN B on A.codB = B.codB WHERE categoria= '$categoria' AND nivel= '$nivel' ORDER BY B.codB

Etiquetas: select, tablas, campos
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 12:58.