> Manuales > Tutorial de SQL

Cómo realizar selecciones eficientemente. Ejemplos prácticos.

La selección total o parcial de una tabla se lleva a cabo mediante la instrucción Select. En dicha selección hay que especificar:

-Los campos que queremos seleccionar
-La tabla en la que hacemos la selección

En nuestra tabla modelo de clientes podríamos hacer por ejemplo una selección del nombre y dirección de los clientes con una instrucción de este tipo:

Select nombre, dirección From clientes

Si quisiésemos seleccionar todos los campos, es decir, toda la tabla, podríamos utilizar el comodín * del siguiente modo:

Select * From clientes

Resulta también muy útil el filtrar los registros mediante condiciones que vienen expresadas después de la cláusula Where. Si quisiésemos mostrar los clientes de una determinada ciudad usaríamos una expresión como esta:

Select * From clientes Where poblacion Like 'Madrid'

Además, podríamos ordenar los resultados en función de uno o varios de sus campos. Para este ultimo ejemplo los podríamos ordenar por nombre así:

Select * From clientes Where poblacion Like 'Madrid' Order By nombre

Teniendo en cuenta que puede haber más de un cliente con el mismo nombre, podríamos dar un segundo criterio que podría ser el apellido:

Select * From clientes Where poblacion Like 'Madrid' Order By nombre, apellido

Si invirtiésemos el orden « nombre,apellido » por « apellido, nombre », el resultado sería distinto. Tendríamos los clientes ordenados por apellido y aquellos que tuviesen apellidos idénticos se subclasificarían por el nombre.

Es posible también clasificar por orden inverso. Si por ejemplo quisiésemos ver nuestros clientes por orden de pedidos realizados teniendo a los mayores en primer lugar escribiríamos algo así:

Select * From clientes Order By pedidos Desc

Una opción interesante es la de efectuar selecciones sin coincidencia. Si por ejemplo buscásemos el saber en qué ciudades se encuentran nuestros clientes sin necesidad de que para ello aparezca varias veces la misma ciudad usaríamos una sentencia de esta clase:

Select Distinct poblacion From clientes Order By poblacion

Así evitaríamos ver repetido Madrid tantas veces como clientes tengamos en esa población.

Rubén Alvarez

Rubén es doctor en química y programador principalmente en sus ratos libres con...

Manual