PORTAFOLIO 2º CORTE
Componentes del SQL
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.
Comandos
Primero que todo debemos explorar cada uno de los terminos trabajados hasta el momento para entender la funcion esp
Existen dos tipos de comandos SQL:
· los DLL que permiten crear y definir nuevas bases de datos, campos e indices.
COMANDOS DLL |
|
COMANDO |
DECRIPCION |
CREATE |
Utilizado para crear nuevas tablas, campos e índices. |
DROP |
Empleado para eliminar tablas, índices e bases de datos… |
ALTER |
Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos. |
· los DML son las siglas de Data Manipulation Language y se refiere a los comandos que permiten a un usuario manipular los datos, generando consultas para ordenar, filtrar y extraer datos de la base de datos.
COMANDOS DML |
|
COMANDO |
DESCRIPCION |
SELECT |
Utilizado para consultar registros de la base de datos que satisfagan un criterio determinado. |
INSERT |
Utilizado para cargar lotes de catos en la base de datos en una única operación. |
UPDATE |
Utilizado para modificar los valores de los campos y registros. |
DELETE |
Utilizado para eliminar registros de una tabla de una base de datos |
Cláusulas
Las cláusulas son condiciones de modificación utilizadas para definir los datos que desea seleccionar o manipular.
CLAUSULA |
DESCRIPCION |
FROM |
Utilizado para especificar la tabla de la cual se van a seleccionar los registros. |
WHERE |
Utilizado para especificar las condiciones que deben reunir los registros que se van a seleccionar. |
GROUP BY |
Utilizado para separar los registros seleccionados en grupos específicos. |
HAVING |
Utilizado para expresar la condición que debe satisfacer cada grupo. |
ORDER BY |
Utilizada para ordenar los registros seleccionados de acuerdo con un orden especifico. |
Operadores Lógicos
Estos operadores logicos los trabajaremos en el momento en que empecemos a hacer condiciones, por ejemplo cuando necesitemos hacer dos conciones en una sola consulta.
OPERADOR |
USO |
AND |
Es el ‘y’ lógico. Evalúa dos condiciones y devuelve un valor de verdad solo si ambas son ciertas. |
OR |
Es el ’o’ lógico. Evalúa dos condiciones y devuelve un valor de verdad si alguna de las dos es cierta. |
NOT |
Negación lógica. Devuelve el valor contrario de la expresión. |
Operadores de Comparación
Estos igualmente se trabajara en condciones pero estos me daran la opcion de comparar valores y registros.
OPERADOR |
USO |
< |
Menor que |
> |
Mayor que |
<> |
Distinto que |
<= |
Menor o igual que |
>= |
Mayor o igual que |
= |
Igual que |
BETWEEN |
Utilizado para especificar un intervalo de valores. |
LIKE |
Utilizado en la comparación de un modelo |
IN |
Utilizado para especificar registros de una base de datos. |
Consultas vistas al lo largo del corte
SELECT
SELECT [ALL | DISTINCT ]
<nombre_campo> [{,<nombre_campo>}]
FROM <nombre_tabla>|<nombre_vista>
[{,<nombre_tabla>|<nombre_vista>}]
[WHERE <condicion> [{ AND|OR
[GROUP BY <nombre_campo> [{,<nombre_campo >}]]
[HAVING <condicion>[{ AND|OR
[ORDER BY <nombre_campo>|
[{,<nombre_campo>|
La sintaxis básica de una consulta de selección es la siguiente:
SELECT campos FROM nom_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.
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 matricula,
marca,
modelo,
color,
numero_kilometros,
FROM automoviles
ORDER BY marca;
Esta consulta devuelve los campos MATRICULA, MARCA, MODELO, COLOR, NUM_KILOMETROS de la tabla
AUTOMOVILES ordenados por el campos MARCA.
Se pueden ordenar los registros por mas de un campo, como por ejemplo:
SELECT matricula,
marca,
modelo,
color,
numero_kilometros,
FROM automoviles
ORDER BY marca,modelo;
Incluso se puede especificar el orden de los registros:
ASENDENTE mediante la claúsula (ASC - se toma este valor por defecto) ó descendente (DESC).
SELECT matricula,
marca,
modelo,
color,
numero_kilometros,
FROM automoviles
ORDER BY marca DESC, modelo ASC;
Consultas con Predicado
El predicado se incluye entre la claúsula y el primer nombre del campo a recuperar, los posibles predicados son:
ALL
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 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 diferencia del predicado anterior
que sólo se fijaba en el contenido de los campos seleccionados, éste lo hace en el
contenido del registro completo independientemente de los campo indicados en la
cláusula SELECT.
SELECT DISTINCTROW Apellido FROM Empleados;