miércoles, 12 de junio de 2013

Expresión WHERE en SQL



SQL es un lenguaje de programación de base de datos global, diseñado para almacenar, manipular y recuperar datos en bases de datos relacionales. Cuenta con instrucciones para consulta, definición y actualización de datos.


Demos paso a las expresiones fundamentales para luego indagar más en la que se enfoca esta publicación. SELECT es la sentencia básica que recupera información de la base de datos. Posee muchas opciones y matices. La forma básica de la sentencia SELECT, consta de tres cláusulas: SELECT, FROM Y WHERE. En forma general, se expresa de la siguiente manera:

SELECT <lista de atributos>
FROM <lista de tablas>
WHERE <condiciones>

  • <lista de atributos>: lista de nombres de atributos cuyos valores van a ser recuperados de la base de datos por la consulta.
  • <lista de tablas>: lista de nombres de las relaciones entre tablas, necesarias para procesar la consulta.
  • <condiciones>: expresión condicional que identifica las tuplas que van a ser recuperadas por la consulta.
La expresión WHERE representa una condición de selección de fila, vale decir, que se utiliza para especificar condiciones que deben reunir los registros que se van a seleccionar y filtrar resultados que cumplan con estas condiciones, según lo que se desee obtener de la base de datos con la consulta creada.

Para ejemplificar el uso de la expresión WHERE, supongamos que en la base de datos de la Universidad de Chile, en la cual existen registros sobre entidades como PROFESOR, ALUMNO y FUNCIONARIO. Cada entidad posee atributos y relaciones con otras entidades o tablas. A continuación, muestro el esquema de base de datos relacional que diseñé para explicar:


Ahora, por ejemplo, si necesitamos encontrar a todos los alumnos que se encuentren en esta universidad, la consulta podría escribirse así:

SELECT *
FROM ALUMNO, UNIVERSIDAD
WHERE ALUMNO.RUT = UNIVERSIDAD.RUT_A

La expresión WHERE permite a esta consulta filtrar los resultados a sólo alumnos, dejando de lado de la obtención de datos a funcionarios y profesores.

Luego, si quisiéramos obtener a los alumnos que pertenecen a la facultad de Economía y Negocios, nos encontramos frente a dos condiciones que nos ayudarán a encontrar nuestro resultado, para lo que se utiliza un separador de condiciones conocido como AND. Podría expresarse de la siguiente manera:

SELECT *
FROM ALUMNO, UNIVERSIDAD
WHERE ALUMNO.RUT = UNIVERSIDAD.RUT_A AND UNIVERSIDAD.Facultad = 'Economía y Negocios'

Es así como esta expresión nos permite seleccionar solamente algunas filas de una tabla que cumplan con una determinada condición, que restringe nuestras posibilidades de resultado exclusivamente a lo que se indique en la consulta. Resulta ser una herramienta muy útil al momento de manipular una base de datos y poder extraer información valiosa para diversos análisis o apoyo a toma de decisiones.











No hay comentarios:

Publicar un comentario