Publicado el 14 de Enero del 2017
5.064 visualizaciones desde el 14 de Enero del 2017
129,1 KB
34 paginas
Creado hace 23a (17/12/2000)
Tutorial de SQL por Claudio Casares
INDICE
1. Introducción
1.1 Componentes del SQL
1.2 Comandos
1.3 Cláusulas
1.4 Operadores Lógicos
1.5 Operadores de Comparación
1.6 Funciones de Agregado
2. Consultas de Selección
2.1 Consultas Básicas
2.2 Ordenar los Registros
2.3 Consultas con Predicado
2.4 Alias
2.5 Bases de Datos Externas
3. Criterios de Selección
3.1 Operadores Lógicos
3.2 Intervalos de Valores
3.3 El Operrador Like
3.4 El Operador In
3.5 La cláusula WHERE
4. Agrupamiento de Registros y Funciones Agregadas
4.1 El cláusula GROUP BY
4.2 AVG (Media Aritmética)
4.3 Count (Contar Registros)
4.4 Max y Min (Valores Máximos y Mínimos)
4.5 StDev y StDevP (Desviación Estándar)
4.6 Sum (Sumar Valores)
4.7 Var y VarP (Varianza)
5. Consultas de Actualización
5.1 Consultas de Eliminación
5.2 Consultas de Datos Añadidos
5.3 Consultas de Actualización
6. Tipos de Datos
7. SubConsultas
8. Consultas de Referencias Cruzadas
9. Consultas de Unión Internas
10. Consultas de Unión Externas
ASP-ADO Tutoriales de la Cueva
Pedro Rufo
http.//usuarios.tripod.es/smaug
11. Estructuras de las Tablas
11.1 Creación de Tablas
11.2 La cláusula CONSTRAINT
11.3 Creación de Indices
11.4 Eliminar y Añadir Campos e Indices
12. Consultas con Parámetros
13. Acceso a Bases de Datos Externas
14. Omitir los Permisos de Ejecución
15. La Cláusula Procedure
16. Anexos
16.1 Resolución de Problemas
16.1.1 Información Duplicada
16.1.2 Registros no Relacionados
16.2 Utilizar SQL desde Visual Basic
16.3 Funciones utilizables
16.4 La función iif
16.5 Manual de Estilo
1.- INTRODUCCION
El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos
normalizado, utilizado por el motor de base de datos de Microsoft Jet. SQL se utiliza
para crear objetos QueryDef, como el argumento de origen del método
OpenRecordSet y como la propiedad RecordSource del control de datos. También se
puede utilizar con el método Execute para crear y manipular directamente las bases
de datos Jet y crear consultas SQL de paso a través para manipular bases de datos
remotas cliente - servidor.
1.1. Componentes del SQL
ASP-ADO Tutoriales de la Cueva
Pedro Rufo
http.//usuarios.tripod.es/smaug
El lenguaje SQL está compuesto por comandos, cláusulas, operadores y funciones
de agregado. Estos elementos se combinan en las instrucciones para crear,
actualizar y manipular las bases de datos.
1.2 Comandos
Existen dos tipos de comandos SQL:
los DLL que permiten crear y definir nuevas bases de datos, campos e
índices.
los DML que permiten generar consultas para ordenar, filtrar y extraer datos
de la base de datos.
•
•
Comando
Comandos DLL
Descripción
CREATE Utilizado para crear nuevas tablas, campos e índices
DROP
Empleado para eliminar tablas e índices
Utilizado para modificar las tablas agregando campos o cambiando la
definición de los campos.
ALTER
Comandos DML
Descripción
criterio determinado
Comando
SELECT Utilizado para consultar registros de la base de datos que satisfagan un
INSERT Utilizado para cargar lotes de datos en la base de datos en una única
UPDATE Utilizado para modificar los valores de los campos y registros
DELETE Utilizado para eliminar registros de una tabla de una base de datos
especificados
operación.
1.3 Cláusulas
Las cláusulas son condiciones de modificación utilizadas para definir los datos que
desea seleccionar o manipular.
Cláusula
FROM
WHERE
GROUP
BY
Descripción
Utilizada para especificar la tabla de la cual se van a seleccionar los
registros
Utilizada para especificar las condiciones que deben reunir los registros
que se van a seleccionar
Utilizada para separar los registros seleccionados en grupos específicos
ASP-ADO Tutoriales de la Cueva
Pedro Rufo
http.//usuarios.tripod.es/smaug
HAVING Utilizada para expresar la condición que debe satisfacer cada grupo
Utilizada para ordenar los registros seleccionados de acuerdo con un
ORDER
BY
orden específico
1.4 Operadores Lógicos
Operador
Uso
AND
OR
NOT
Es el "y" lógico. Evalua dos condiciones y devuelve un valor de verdad
sólo si ambas son ciertas.
Es el "o" lógico. Evalúa dos condiciones y devuelve un valor de verdar si
alguna de las dos es cierta.
Negación lógica. Devuelve el valor contrario de la expresión.
1.5 Operadores de Comparación
Operador
<
>
<>
<=
>=
=
BETWEEN
LIKE
In
Uso
Menor que
Mayor que
Distinto de
Menor ó Igual que
Mayor ó Igual que
Igual que
Utilizado para especificar un intervalo de valores.
Utilizado en la comparación de un modelo
Utilizado para especificar registros de una base de datos
1.6 Funciones de Agregado
Las funciones de agregado se usan dentro de una cláusula SELECT en grupos de
registros para devolver un único valor que se aplica a un grupo de registros.
Función
AVG
Utilizada para calcular el promedio de los valores de un campo
determinado
Descripción
COUNT Utilizada para devolver el número de registros de la selección
SUM
MAX
MIN
Utilizada para devolver la suma de todos los valores de un campo
determinado
Utilizada para devolver el valor más alto de un campo especificado
Utilizada para devolver el valor más bajo de un campo especificado
2. Consultas de Selección
Las consultas de selección se utilizan para indicar al motor de datos que devuelva
información de las bases de datos, esta información es devuelta en forma de
conjunto de registros que se pueden almacenar en un objeto recordset. Este
conjunto de registros es modificable.
ASP-ADO Tutoriales de la Cueva
Pedro Rufo
http.//usuarios.tripod.es/smaug
2.1 Consultas básicas
La sintaxis básica de una consulta de selección es la siguiente:
SELECT Campos FROM Tabla;
En donde campos es la lista de campos que se deseen recuperar y tabla es el
origen de los mismos, por ejemplo:
SELECT Nombre, Telefono FROM Clientes;
Esta consulta devuelve un recordset con el campo nombre y teléfono de la tabla
clientes.
2.2 Ordenar los registros
Adicionalmente se puede especificar el orden en que se desean recuperar los
registros de las tablas mediante la claúsula ORDER BY Lista de Campos. En donde
Lista de campos representa los campos a ordenar. Ejemplo:
SELECT CodigoPostal, Nombre, Telefono FROM Clientes ORDER BY Nombre;
Esta consulta devuelve los campos CodigoPostal, Nombre, Telefono de la tabla
Clientes ordenados por el campo Nombre.
Se pueden ordenar los registros por mas de un campo, como por ejemplo:
SELECT CodigoPostal, Nombre, Telefono FROM Clientes ORDER BY
CodigoPostal, Nombre;
Incluso se puede especificar el orden de los registros: ascendente mediante la
claúsula (ASC -se toma este valor por defecto) ó descendente (DESC)
SELECT CodigoPostal, Nombre, Telefono FROM Clientes ORDER BY
CodigoPostal DESC , Nombre ASC;
2.3 Consultas con Predicado
El predicado se incluye entre la claúsula y el primer nombre del campo a recuperar,
los posibles predicados son:
Predicado
ALL
TOP
DISTINCT
DISTINCTROW
ALL
Descripción
Devuelve todos los campos de la tabla
Devuelve un determinado número de registros de la
tabla
Omite los registros cuyos campos seleccionados
coincidan totalmente
Omite los registros duplicados basandose en la
totalidad del registro y no sólo en los campos
seleccionados.
Si no se incluye ninguno de los predicados se asume ALL. El Motor de base de
datos selecciona todos los registros que cumplen las condiciones de la instrucción
ASP-ADO Tutoriales de la Cueva
Pedro Rufo
http.//usuarios.tripod.es/smaug
SQL. No se conveniente abusar de este predicado ya que obligamos al motor de la
base de datos a analizar la estructura de la tabla para averiguar los campos que
contiene, es mucho más rápido indicar el listado de campos deseados.
SELECT ALL FROM Empleados;
SELECT * FROM Empleados;
TOP
Devuelve un cierto número de registros que entran entre al principio o al final de un
rango especificado por una cláusula ORDER BY. Supongamos que queremos
recuperar los nombres de los 25 primeros estudiantes del curso 1994:
SELECT TOP 25 Nombre, Apellido FROM Estudiantes
ORDER BY Nota DESC;
Si no se incluye la cláusula ORDER BY, la consulta devolverá un conjunto arbitrario
de 25 registros de la tabla Estudiantes .El predicado TOP no elige entre valores
iguales. En el ejemplo anterior, si la nota media número 25 y la 26 son iguales, la
consulta devolverá 26 registros. Se puede utilizar la palabra reservada PERCENT
para devolver un cierto porcentaje de registros que caen al principio o al final de un
rango especificado por la cláusula ORDER BY. Supongamos que en lugar de los 25
primeros estudiantes deseamos el 10 por ciento del curso:
SELECT TOP 10 PERCENT Nombre, Apellido FROM Estudiantes
ORDER BY Nota DESC;
El valor que va a continuación de TOP debe ser un Integer sin signo.TOP no afecta
a la posible actualización de la consulta.
DISTINCT
Omite los registros que contienen datos duplicados en los campos seleccionados.
Para que los valores de cada campo listado en la instrucción SELECT se incluyan en
la consulta deben ser únicos.
Por ejemplo, varios empleados listados en la tabla Empleados pueden tener el
mismo apellido. Si dos registros contienen López en el campo Apellido, la siguiente
instrucción SQL devuelve un único registro:
SELECT DISTINCT Apellido FROM Empleados;
Con otras palabras el predicado DISTINCT devuelve aquellos registros cuyos
campos indicados en la cláusula SELECT posean un contenido diferente. El
resultado de una consulta que utiliza DISTINCT no es actualizable y no refleja los
cambios subsiguientes realizados por otros usuarios.
DISTINCTROW
Devuelve los registros diferentes de una tabla; a diferen
Comentarios de: Tutorial de SQL (1)