28 - Cláusula order by del select.


Problema:

Trabajamos con la tabla "libros" de una librería.

Eliminamos la tabla, si existe:

 drop table if exists libros;

Creamos la tabla estableciendo como clave primaria y "auto_increment" el campo "codigo":

 create table libros(
  codigo int unsigned auto_increment,
  titulo varchar(40),
  autor varchar(30),
  editorial varchar(15),
  precio decimal (5,2) unsigned,
  primary key (codigo)
 );

Visualizamos su estructura:

 describe libros;

Ingresamos algunos registros:

 insert into libros (titulo,autor,editorial,precio)
  values('El aleph','Borges','Planeta',15.50);
 insert into libros (titulo,autor,editorial,precio)
  values('Martin Fierro','Jose Hernandez','Emece',22.90);
 insert into libros (titulo,autor,editorial,precio)
  values('Martin Fierro','Jose Hernandez','Planeta',39);
 insert into libros (titulo,autor,editorial,precio)
  values('Aprenda PHP','Mario Molina','Emece',19.50);
 insert into libros (titulo,autor,editorial,precio)
  values('Cervantes y el quijote','Borges','Paidos',35.40);
 insert into libros (titulo,autor,editorial,precio)
  values('Matematica estas ahi', 'Paenza', 'Paidos',19);

Recuperamos los registros de la tabla "libros" ordenados por el título:

 select codigo,titulo,autor,editorial,precio
  from libros
  order by titulo;

Aparecen los registros ordenados alfabéticamente por el campo especificado.

Ordenamos por "precio", colocando el número de orden del campo (5):

 select codigo,titulo,autor,editorial,precio
 from libros
 order by 5;

Ordenamos los libros por 2 campos, "titulo" y "editorial":

 select codigo,titulo,autor,editorial,precio
  from libros
  order by titulo, editorial;

Ahora los ordenamos en distintos sentidos, por "titulo" en sentido ascendente y "editorial" en sentido descendente:

 select codigo,titulo,autor,editorial,precio
  from libros
  order by titulo asc, editorial desc;



Retornar