Foros del Web » Programando para Internet » PHP »

ordenar una consulta de 2 tablas por un campo

Estas en el tema de ordenar una consulta de 2 tablas por un campo en el foro de PHP en Foros del Web. Buenas compañeros: Tengo un problemilla con el cual llevo ya semana y media y necesito tenerlo listo para mañana Tengo dos tablas, clientes y procesos. ...
  #1 (permalink)  
Antiguo 11/12/2006, 11:05
Avatar de susaninhax  
Fecha de Ingreso: noviembre-2004
Mensajes: 358
Antigüedad: 20 años
Puntos: 3
ordenar una consulta de 2 tablas por un campo

Buenas compañeros:

Tengo un problemilla con el cual llevo ya semana y media y necesito tenerlo listo para mañana

Tengo dos tablas, clientes y procesos. De la tabla clientes quiere mostrar campos tipo nombre, apellidos, etc. y de la tabla Procesos quiero el campo estado Y no tengo ni idea de como hacer para que me seleccione todos los clientes pero me los ordene por el campo estado.

tabla clientes {id_cliente, nombre, apellidos}
tabla procesos { id_proceso, id_cliente, id_convencion, estado}
He intentado esto:

Código PHP:
$sql="select id_cliente, nombre, apellidos, cargo, ciudad, sector, estado
    from clientes 
    where activo='si'     
             order by estado
    LIMIT "
.$limitInf.",10";    


$result=mysql_query($sql$link)or die (mysql_error());

while (
$row=mysql_fetch_array($result)) {
$id_cliente=$row["id_cliente"];
$nombre=$row["nombre"];
$apellidos=$row["apellidos"];
$cargo=$row["cargo"];
$ciudad=$row["ciudad"];
$sector=$row["sector"];


$sql_proces="select estado
from proceso_convenciones
where id_cliente='$id_cliente'
and id_convencion='"
.$_GET["id_convencion"]."'";

$result_proces=mysql_query($sql_proces$link)or die (mysql_error());
$row_proces=mysql_fetch_array($result_proces);
$estado=$row_proces["estado"]; 
Así consigo que me muestre todos los clientes, y me indica cual tiene estado positivo o negativo, pero ahora quieren que aparezca la lista igualmente de clientes pero ordenados por el estado.
Ami me da que es imposible de hacer, no lo consigo no se como hacer, he mirado libros de mysql y no consigo sacar nada en claro, he probado el left join pero me devuelve null los valores que no comparten las tablas:_( como nombre por ejemplo. Hay algun modo?????

es muy importante porfa y creo que además es una consulta interesante.

Muchísimas gracias de antemano por la ayuda, voy a estar actualizando cada dos por tres.. argg!!
  #2 (permalink)  
Antiguo 11/12/2006, 13:25
Avatar de jerkan  
Fecha de Ingreso: septiembre-2005
Mensajes: 1.607
Antigüedad: 19 años, 2 meses
Puntos: 19
Re: ordenar una consulta de 2 tablas por un campo

Yo lo haría así:
Código PHP:
$query "SELECT CLI.* FROM Clientes AS CLI INNER JOIN Procesos AS PRO ON PRO.id_cliente = CLI.id_cliente ORDER BY PRO.Estado"
Espero haberte ayudado. Un saludo
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:54.