El lenguaje SQL es un estándar universal para el tratamiento de datos, independientemente de dónde residan éstos, y su conocimiento es importante para muchos profesionales y usuarios de ordenadores, desde los diseñadores Web, que necesitan saber cómo extraer la información de una base de datos, hasta los usuarios de ofimática que operan con aplicaciones como Access, pasando por programadores y administradores de bases de datos. Esta guía representa una vía rápida para aprender a trabajar con SQL, conociendo gran parte de las sentencias de este lenguaje y aprendiendo a usarlas en ejemplos prácticos utilizando Microsoft Access, Oracle, SQL Server y MySQL. Tras una introducción al modelo de datos relacional, el más usado en la actualidad, se explica cómo ejecutar consultas sencillas, cómo aplicar filtros y realizar búsquedas, cómo ordenar los datos, efectuar uniones entre consultas o agrupar la información por categorías. Se aborda además el estudio de todas las sentencias relacionadas con la manipulación de los datos, así como las que permiten definir las estructuras de las bases de datos. Finalmente, se describe el proceso de creación de elementos más complejos como los desencadenadores, funciones y procedimientos almacenados, usando para ello los lenguajes derivados de SQL: Transact-SQL, PL/SQL y SQL/PSM. Aprenderá a completar cualquier operación sobre una base de datos, conociendo la sintaxis estándar de SQL y en muchos casos los aspectos específicos de cada producto.Introducción ¿Qué es SQL? Aplicaciones de SQL Intérpretes de SQL Tipos de RDBMS Cómo usar este libro Convenciones tipográficas 1. El modelo relacional 1.1. Introducción 1.2. Modelos de bases de datos 1.3. Bases de datos relacionales 1.3.1. Tablas y sus relaciones 1.3.2. Filas y columnas 1.3.3. Acceso a los datos 1.3.4. Catalogación de los datos 1.3.5. Integridad de los datos Tipos de datos Integridad referencial 1.3.6. Tratamiento de valores nulos 1.3.7. Lenguajes de comunicación con la base de datos 1.3.8. Tratamiento de conjuntos de datos 1.4. Normalización de bases de datos 1.4.1. Primera forma normal 1.4.2. Segunda y tercera forma normal 1.5. Resumen 2. Consultas simples 2.1. Introducción 2.2. Pasos previos 2.2.1. Microsoft Access 2.2.2. MySQL 2.2.3. Oracle 2.2.4. SQL Server 2.3. Estructura de la base de datos 2.4. Primeros pasos con SELECT 2.4.1. Sintaxis general 2.4.2. Obtener todo el contenido de una tabla 2.4.3. Selección de columnas 2.4.4. Columnas con alias 2.4.5. Alias para las tablas 2.4.6. Exclusión de filas repetidas 2.5. Resumen 3. Filtros y búsquedas 3.1. Introducción 3.2. Sintaxis de la cláusula WHERE 3.2.1. Operadores de relación 3.2.2. Operadores lógicos 3.2.3. Agrupar expresiones con paréntesis 3.3. Predicados de la cláusula WHERE 3.3.1. Búsqueda de patrones de caracteres 3.3.2. Rangos y listas de valores 3.3.3. Búsqueda de valores nulos 3.3.4. Predicados con subconsultas 3.4. Adición de columnas calculadas 3.4.1. Cálculos numéricos 3.4.2. Operaciones con caracteres 3.4.3. Operaciones con fechas 3.4.4. Análisis y sustitución de valores 3.5. Resumen 4. Consultas en múltiples tablas y vistas 4.1. Introducción 4.2. Operaciones de conjuntos 4.2.1. Unión de conjuntos 4.2.2. Intersección de conjuntos 4.2.3. Diferencia de conjuntos 4.3. Combinación de tablas 4.3.1. Combinaciones por equivalencia 4.3.2. Combinaciones no exclusivas 4.3.3. Otros tipos de combinaciones entre tablas 4.4. Reutilización de consultas complejas 4.4.1. Definición de una vista 4.4.2. Uso de una vista 4.4.3. Otras operaciones con vistas 4.5. Resumen 5. Agrupación y ordenación de datos 5.1. Introducción 5.2. Ordenar las filas 5.2.1. La cláusula ORDER BY 5.2.2. Orden ascendente y descendente 5.2.3. Ordenar por varias columnas 5.2.4. Referencias a columnas derivadas 5.3. Agrupación de resultados 5.3.1. La cláusula GROUP BY 5.3.2. Funciones de agregación 5.3.3. Funciones de agregado y columnas derivadas 5.3.4. Uso de las funciones de agregado sin GROUP BY 5.3.5. Filtrado de las filas agrupadas 5.4. Resumen 6. Funciones de SQL 6.1. Introducción 6.2. Categorías de funciones 6.3. Funciones integradas 6.3.1. Particularidades de Oracle 6.3.2. Particularidades de MySQL 6.3.3. Particularidades de SQL Server 6.3.4. Particularidades de Access 6.4. Funciones de cadena 6.4.1. Longitud de la cadena 6.4.2. Eliminación de caracteres sobrantes 6.4.3. Conversiones