Ver Mensaje Individual
  #5 (permalink)  
Antiguo 13/01/2011, 13:33
solovoy
 
Fecha de Ingreso: enero-2011
Mensajes: 13
Antigüedad: 13 años, 4 meses
Puntos: 1
Respuesta: Ordenar por 2 campos juntos

Gracias por la respuesta, es justo lo que queria. La 3º parte de la consulta la omiti, ya que solo en el caso de Jose Luis Perales solo tendria que aparecer en la J y en la P. No considero ponerlo en la L. El unico problema que le encontre a la consulta es que no omite los resultados repetidos. En el ejemplo que yo puse no se daria, pero en el caso de que haya un artista cuyo nombre y apellido empieze con la misma letra apareceria repetida. Por ej: Janis Joplin. La solucion de novato que yo habia encontrado es hacer consultas por separado, poniendo todos los resultados en un array para despues simplemente ordenar el array. Funciona como yo quiero, pero no estoy seguro si es preferible en razones de optimizacion si es preferible que el ordenamiento lo haga MySQL o PHP. El codigo que estoy usando ahora es el siguiente:

Código PHP:
function buscar_artistas() {
$consulta "select nombre,apellido,a_Id from artistas where apellido like '$l%'";

$artistas mysql_query($consulta);

$artarray = array();

while (
$row mysql_fetch_array($artistas)) {
    
$artarray[$row[a_Id]] = $row[apellido].', '.$row[nombre];
}

$consulta "select nombre,apellido,a_id from artistas where nombre like '$l%'";

$artistas mysql_query($consulta);

while (
$row mysql_fetch_array($artistas)) {
    
$artarray[$row[a_id]] = $row[nombre].' '.$row[apellido];
}

sort($artarray);

foreach (
$artarray as $key => $value) {
    echo 
"<li><a href='artista.php?id=".$key."'>".$value."</a></li>";
}

Muchas gracias por la respuesta.