En este breve tutorial enseñaremos como ordenador los resultados obtenidos en una consulta a base de datos realizada con CakePHP.
Para indicar a CakePHP qué campo o campos se van a utilizar para realizar la ordenación debemos utilizar el parámetro ‘order‘ de las opciones permitidas en las consultas.
Veamos el funcionamiento del parámetro ‘order‘ en un ejemplo. Vamos a obtener todos los partidos que existen la base de datos, indicando que queremos que el resultado de la consulta esté ordenador por fecha:
PHP |copy code |?
1 $options = array(2 'order' => array('Partidos.fecha ASC'),3 );4 $this->Partidos->find("all", $options)
En el código vemos que aparece el parámetro ‘order‘ y como valor tiene un array con todos los campos por los que queremos que se ordenen los resultados. En este caso se ordenarán por fecha ascendente, es decir del más antiguo al más reciente.
Si quisiesemos ordenar por varios campos de la tabla deberíamos añadirlos de la siguiente forma:
PHP |copy code |?
1 $options = array(2 'order' => array('Partidos.fecha ASC','Partidos.nombre DESC'),3 );4 $this->Partidos->find("all", $options)
Al configurar varios valores en el parámetro ‘order‘ obtendremos una consulta a la base de datos de esta forma:
MySQL |copy code |?
1 SELECT * FROM Partidos ORDER BY Partidos.fecha ASC, Partidos.nombre DESC
Primero realiza la ordenación por fecha, y en caso de que alguna esté repetida, esos registros los ordenará en función del nombre.
Con este sencillo parámetro podrás obtener un conjunto de registros ordenados tras consultar en base de datos con CakePHP.
Deja tu comentario