Los fundamentos de SQL

Las bases de datos relacionales usan DDL, DML, DCL y uniones para crear y reportar datos

Tabla de contenidoExpandir

El lenguaje de consulta estructurado (SQL) es uno de los componentes fundamentales de la arquitectura de base de datos moderna. SQL define los métodos utilizados para crear y manipular bases de datos relacionales en todas las plataformas principales. A primera vista, el lenguaje puede parecer intimidante y complejo, pero no es tan difícil.





Acerca de SQL

La pronunciación correcta de SQL es un tema polémico dentro de la comunidad de bases de datos. En su estándar SQL, el American National Standards Institute declaró que la pronunciación oficial es 'es queue el'. Sin embargo, muchos profesionales de las bases de datos han adoptado la pronunciación del argot 'sequel'. Al igual que con la pronunciación de GIF , no hay una respuesta correcta.

SQL viene en muchos sabores. Las bases de datos Oracle utilizan su propio PL/SQL. Microsoft SQL Server hace uso de Transact-SQL. Todas las variaciones se basan en el estándar de la industria ANSI SQL.



Esta introducción utiliza comandos SQL compatibles con ANSI que funcionan en cualquier sistema de base de datos relacional moderno.

DDL y DML

Los comandos SQL se pueden dividir en dos sublenguajes principales. El lenguaje de definición de datos contiene los comandos utilizados para crear y destruir bases de datos y objetos de base de datos. Después de definir la estructura de la base de datos con DDL, los administradores y usuarios de la base de datos pueden usar el lenguaje de manipulación de datos para insertar, recuperar y modificar los datos que contiene.



SQL admite un tercer tipo de sintaxis llamada Lenguaje de control de datos . DCL gobierna el acceso de seguridad a los objetos dentro de la base de datos. Por ejemplo, un script DCL otorga o revoca cuentas de usuario específicas el derecho de leer o escribir en tablas dentro de una o más áreas definidas de la base de datos. En la mayoría de los entornos multiusuario administrados, los administradores de bases de datos suelen ejecutar scripts DCL.

Comandos del lenguaje de definición de datos

El lenguaje de definición de datos se utiliza para crear y destruir bases de datos y objetos de bases de datos. Estos comandos los utilizan principalmente los administradores de bases de datos durante las fases de instalación y eliminación de un proyecto de base de datos. DDL gira en torno a cuatro comandos principales: crear , usar , alterar , y soltar .

Crear

los crear El comando establece bases de datos, tablas o consultas en su plataforma. Por ejemplo, el comando:

|_+_|

crea una base de datos vacía llamada empleados en su SGBD. Después de crear la base de datos, el siguiente paso es crear tablas que contengan datos. Otra variante de la crear comando logra este propósito. El comando:



|_+_|

establece una tabla titulada información personal en la base de datos actual. En el ejemplo, la tabla contiene tres atributos: primer nombre , apellido , y ID de empleado junto con alguna información adicional.

Usar

los usar El comando especifica la base de datos activa. Por ejemplo, si actualmente está trabajando en la base de datos de ventas y desea ejecutar algunos comandos que afectarán la base de datos de empleados, prepárelos con el siguiente comando SQL:



|_+_|

Vuelva a verificar la base de datos en la que está trabajando antes de emitir comandos SQL que manipulen datos.

Alterar

Después de haber creado una tabla dentro de una base de datos, modifique su definición a través de la alterar comando, que cambia la estructura de una tabla sin eliminarla ni volver a crearla. Echa un vistazo al siguiente comando:



|_+_|

De manera similar, el siguiente comando se usaría para eliminar toda la base de datos de empleados:

|_+_|

Use este comando con cuidado. los soltar El comando elimina estructuras de datos completas de su base de datos. Si desea eliminar registros individuales, utilice el Eliminar dominio del Lenguaje de Manipulación de Datos.



Comandos del lenguaje de manipulación de datos

El lenguaje de manipulación de datos se utiliza para recuperar, insertar y modificar información de la base de datos. Estos comandos DML ofrecen el marco típico para interactuar con la base de datos de forma rutinaria.

Insertar

los insertar El comando agrega registros a una tabla existente. Volviendo al ejemplo de personal_info de la sección anterior, imagina que nuestro departamento de recursos humanos necesita agregar un nuevo empleado a su base de datos. Usa un comando similar a este:

|_+_|

Tenga en cuenta que hay cuatro valores especificados para el registro. Estos corresponden a los atributos de la tabla en el orden en que fueron definidos: primer nombre , apellido , ID de empleado y salario .

Seleccione

los Seleccione command es el comando más utilizado en SQL. Recupera información específica de una base de datos operativa. Eche un vistazo a algunos ejemplos, nuevamente usando la tabla personal_info de la base de datos de empleados.

El comando que se muestra a continuación recupera toda la información contenida en la tabla personal_info. El asterisco es un carácter comodín en SQL.

|_+_|

Como alternativa, limite los atributos que se recuperan de la base de datos especificando qué se selecciona Por ejemplo, el departamento de Recursos Humanos puede requerir una lista de los apellidos de todos los empleados de la empresa. El siguiente comando SQL recuperaría solo esa información:

|_+_|

los dónde La cláusula limita los registros que se recuperan a aquellos que cumplen con los criterios especificados. El director ejecutivo podría estar interesado en revisar los registros de personal de todos los empleados altamente remunerados. El siguiente comando recupera todos los datos contenidos en personal_info para registros que tienen un valor de salario superior a $50,000:

|_+_|

Actualizar

los actualizar El comando modifica la información contenida en una tabla, ya sea de forma masiva o individual. Suponga que la empresa otorga a todos los empleados un aumento anual del 3 por ciento en el salario por costo de vida. El siguiente comando SQL aplica este golpe a todos los empleados almacenados en la base de datos:

|_+_|

Cuando el nuevo empleado Bart Simpson demuestra un desempeño más allá del llamado del deber, la gerencia desea reconocer sus logros estelares con un aumento de $5,000. La cláusula WHERE destaca a Bart por este aumento:

|_+_|

Borrar

Finalmente, echemos un vistazo a la Eliminar dominio. Encontrará que la sintaxis de este comando es similar a la de los otros comandos DML. El comando DELETE, con un dónde cláusula, elimine un registro de una tabla:

|_+_|

DML también admite campos agregados. en un Seleccione declaración, operadores matemáticos como suma y contar resumir datos dentro de una consulta. Por ejemplo, la consulta:

seleccione el recuento (*) de personal_info;

cuenta el número de registros en la tabla.

Uniones de bases de datos

A unirse combina datos en varias tablas para procesar eficientemente grandes cantidades de datos. Estas declaraciones son donde reside el verdadero poder de una base de datos.

Explorar el uso de un básico unirse operación para combinar datos de dos tablas, continúe con el ejemplo usando la tabla personal_info y agregue una tabla adicional a la mezcla. Suponga que tiene una tabla llamada acción disciplinaria que fue creado con la siguiente declaración:

|_+_|

Esta tabla contiene los resultados de las acciones disciplinarias para los empleados de la empresa. No contiene ninguna información sobre el empleado que no sea el número de empleado.

Suponga que se le ha encomendado la tarea de crear un informe que enumera las acciones disciplinarias tomadas contra todos los empleados con un salario superior a $40,000. El uso de una operación JOIN, en este caso, es sencillo. Recupere esta información usando el siguiente comando:

|_+_|

Tipos de Uniones

Unir tipos en SQL

Las uniones vienen en varios sabores. En la instrucción SQL, la primera tabla (generalmente llamada Tabla A o el Mesa izquierda ) se une a la segunda tabla (generalmente llamada Tabla B o el Mesa derecha ) de una manera consciente de la posición. Por lo tanto, si cambia el orden de las tablas en la declaración de combinación, los resultados de la operación serán diferentes. Los principales tipos de unión incluyen:

    Unir internamente: Solo coincide con los registros donde el en condition coincide con los mismos registros en ambas tablas.Unión exterior: solo coincide con los registros de ambas tablas que excluir los resultados identificados en el en condición.Unirse a la derecha: Coincide con todos los registros de la Tabla B más los registros de la Tabla A que coinciden en condición.Unirse a la izquierda: Coincide con todos los registros de la Tabla A más los registros de la Tabla B que coinciden en condición.Unión cruzada: Coincide con todos los registros como si las tablas fueran idénticas. Este proceso genera algo llamado producto cartesiano . A menudo, las uniones cruzadas no son bienvenidas porque hacen coincidir cada fila de la Tabla A, individualmente, con cada fila de la Tabla B. Por lo tanto, si la Tabla A ofrece cinco registros y la Tabla B ofrece 9 registros, una consulta de unión cruzada ofrece 45 registros filas