sábado, 24 de noviembre de 2012

SQL



SQL fue uno de los primeros lenguajes comerciales para Edgar F. Codd 's modelo relacional , como se describe en su influyente artículo 1970, "Un modelo relacional de datos para grandes bancos de datos compartidos". A pesar de que no cumplan con el modelo relacional como descrito por Codd , se convirtió en el lenguaje de base de datos más ampliamente utilizado. Aunque SQL se describe a menudo como, y en gran medida es, un lenguaje declarativo , también incluye procesales elementos. SQL se convirtió en un estándar de la American National Standards Institute (ANSI) en 1986, y de la Organización Internacional de Normalización (ISO) en 1987. Desde entonces, el estándar se ha mejorado varias veces con características añadidas. Sin embargo, los problemas de portabilidad del código SQL entre los principales productos RDBMS todavía existen debido a la falta de pleno cumplimiento, o las diferentes interpretaciones de la norma. Entre las razones que se mencionan son el gran tamaño y la especificación incompleta de la norma, así como los proveedores de tecnología.


El lenguaje SQL se subdivide en varios elementos de lenguaje, incluyendo:
Cláusulas , que son componentes constitutivos de declaraciones y consultas. (En algunos casos, éstos son opcionales).
Expresiones , que pueden producir tanto escalares valores o tablas que consisten en columnas y filas de datos.
Los predicados que especifican las condiciones que pueden ser evaluados a SQL lógica de tres valores (3VL) o booleanos (verdadero / falso / desconocido) valores de verdad y que se utilizan para limitar los efectos de las declaraciones y preguntas, o para cambiar el flujo del programa.
Las consultas , que recuperan los datos basados ​​en criterios específicos. Este es el elemento más importante de SQL .
Estados , que puede tener un efecto persistente en los esquemas y los datos, o que puedan controlar las operaciones, el flujo de programa, conexiones, sesiones, o diagnósticos.
SQL también incluyen el punto y coma (";") terminador de sentencia. Aunque no es necesario en todas las plataformas, se define como una parte estándar de la gramática SQL.
Insignificante espacios en blanco es generalmente ignorado en sentencias SQL y las consultas, lo que hace que sea más fácil para dar formato a código SQL para facilitar la lectura.


La operación más común en SQL es la consulta, que se realiza con la declarativa SELECT comunicado. SELECT recupera los datos de una o más tablas o expresiones. Estándar SELECT declaraciones no tienen efectos persistentes en la base de datos. Algunas implementaciones no estándar de SELECT puede tener efectos persistentes, como el SELECT INTO sintaxis que existe en algunas bases de datos.
Las consultas permiten al usuario describir los datos deseados, dejando el sistema de gestión de base de datos (DBMS) responsable de la planificación , la optimización y la realización de las operaciones materiales necesarias para producir ese resultado a su antojo.
Una consulta incluye una lista de columnas que se incluirán en el resultado final inmediatamente después de la SELECT palabra clave. Un asterisco (" * ") también se puede utilizar para especificar que la consulta debe devolver todas las columnas de las tablas consultadas. SELECT es la declaración más compleja en SQL, con las palabras clave y las cláusulas opcionales que incluyen:
El DE cláusula que indica la tabla (s) de datos que se va a recuperar. La DE puede incluir la cláusula opcional ÚNETE subcláusulas para especificar las reglas para unir tablas.
La DONDE cláusula incluye un predicado de comparación, lo que restringe las filas devueltas por la consulta. La DONDE cláusula elimina todas las filas del conjunto de resultados para los que el predicado de comparación no se evalúa como True.
El GROUP BY cláusula se utiliza para las filas que tienen valores comunes de proyectos en un conjunto más pequeño de filas. GROUP BY se utiliza a menudo en conjunción con SQL funciones de agregación o para eliminar las filas duplicadas de un conjunto de resultados. La DONDE cláusula se aplica antes de que el GROUP BY cláusula.
El HAVING cláusula incluye un predicado utilizada para filtrar filas resultantes del GROUP BY cláusula. Debido a que actúa sobre los resultados del GROUP BY cláusula, funciones de agregación se puede utilizar en el HAVING cláusula predicado.
El ORDER BY cláusula identifica las columnas que se utilizan para ordenar los datos resultantes, y en qué dirección deben ser clasificadas (opciones ascendente o descendente). Sin un ORDER BY cláusula, el orden de las filas devueltas por una consulta SQL no está definida.
El siguiente es un ejemplo de un SELECT consulta que devuelve una lista de libros caros. La consulta recupera todas las filas de la Reserva mesa en la que el precio columna contiene un valor superior a 100,00. El resultado se ordena en orden ascendente por título . El asterisco (*) en la lista de selección indica que todas las columnas del libro tabla debe incluirse en el conjunto de resultados.


No hay comentarios:

Publicar un comentario