You are on page 1of 20

*

Ing. CIP. Dennis T. Ballena García


* Objetivos
* Que es el Lenguaje SQL
* Breve repaso por la historia
* Características
* Sublenguajes
* Clausulas
* Operadores lógicos
* Operadores Relacionales
* Funciones Agregadas
* Ejemplo de Algunos comandos Básicos
*
Conocer aspectos básicos necesarios para la
correcta utilización de este lenguaje de
consulta, así como su constitución estructural y
el potencial de dicho lenguaje para agilizar y
facilitar las consultas a bases de datos, de
forma tal que el usuario de este lenguaje tenga
acceso a lo que realmente necesita para
utilizarlo de la manera que desee.
*

structured query language = lenguaje de consulta estructurado

SQL es el lenguaje de consulta universal para bases de datos.


Es un lenguaje de base de datos normalizado, utilizado por los diferentes
motores de bases de datos para realizar determinadas operaciones sobre
los datos o sobre la estructura de los mismos.
Una de sus características es el manejo del álgebra y el cálculo relacional
permitiendo efectuar consultas con el fin de recuperar información de interés
de una base de datos, así como también hacer cambios sobre ella.
*
1970 El cientifico informatico E. F. Codd propone el modelo relacional y
asociado a éste un sublenguaje de acceso a los datos basado en el
cálculo de predicados
1974 Teniendo en cuenta los aportes hechos por Codd, donald Chamberlin
y otras personas trabajaron en los laboratorios de investigación de
IBM, con el fin de desarrollar un lenguaje para la especificación de
las características de las bases de datos que adoptaban el modelo
relacional, al cual llamaron SEQUEL (Lenguaje de consulta
estructurado Inglés)

1974 - 1977 Se implementan prototipos como el SEQUEL-XRM


llevando así a una revisión del lenguaje SEQUEL,
cambio el nombre por motivos legales a SQL

1977 La IBM desarrolla el Sistema gestionador de bases de


datos(SGBD) experimental System R
1979 Fue Oracle quien introdujo SQL por primera vez en un Programa
comercial.

1986 El ANSI adoptó SQL como estándar para los lenguajes


relacionales, con la primera entrega de este tipo la cual fue
llamada SQL-86 o SQL1

1987 SQL se transformó en estándar ISO, a nivel normativo.

" este primer estándar no cubre todas las necesidades de los desarrolladores e
incluye funcionalidades de definición de almacenamiento que se consideraron
suprimir " por esto:

1992 se lanza un nuevo estándar ampliado y revisado del SQL


llamado "SQL-92" o "SQL2".
Actualmente Sql es el estándar de facto de la inmensa mayoría de los SGBD
comerciales, este estándar ha sido centro de algunas modificaciones debido al
variante mundo de las conexiones informáticas
*
 Explota la flexibilidad y potencia de los sistemas
relacionales permitiendo gran variedad de operaciones a
través del calculo y el algebra relacional.

 Es un lenguaje declarativo de "alto nivel" o "de no


procedimiento“.

 Una sentencia SQL es como una frase (escrita en inglés )


con la que decimos lo que queremos obtener y de donde
obtenerlo.
*
Las sentencias SQL se clasifican según su finalidad dando origen a tres
Sublenguajes:

 Lenguaje de definición de datos (Data Definition language)DDL.


es el que se encarga de la definición de la base de datos y la
modificación de la estructura de los objetos que estén en ella.
Algunos comandos propios de este sublenguaje son CREATE, ALTER,
DROP y TRUNCATE

CREATE Utilizado para crear nuevas tablas, campos e índices


DROP Empleado para eliminar tablas e índices
Utilizado para modificar las tablas agregando campos o
ALTER
cambiando la definición de los campos.
 Lenguaje de Manipulación de Datos (Data Manipulation Language) DML.
A través de él podemos seleccionar, insertar, eliminar y actualizar
datos. Es la parte que más frecuentemente utilizaremos, y que con
ella se construyen las consultas.
Algunos comandos propios de este sublenguaje son:

Utilizado para consultar registros de la base de datos que


SELECT
satisfagan un criterio determinado
Utilizado para cargar lotes de datos en la base de datos en una
INSERT
única operación.
Utilizado para modificar los valores de los campos y registros
UPDATE
especificados
Utilizado para eliminar registros de una tabla de una base de
DELETE
datos

Lenguaje de control de datos (Data Control Language) DCL.


encargado de la seguridad de la base de datos, en todo lo referente
al control de accesos y privilegios entre los usuarios.
Como por ejemplo: GRANT, REVOKE.
*
Las cláusulas son condiciones de modificación utilizadas para
definir los datos que desea seleccionar o manipular.
Cláusula Descripción
Utilizada para especificar la tabla de la cual se van a
FROM
seleccionar los registros
Utilizada para especificar las condiciones que deben reunir los
WHERE
registros que se van a seleccionar
Utilizada para separar los registros seleccionados en grupos
GROUP BY
específicos
Utilizada para expresar la condición que debe satisfacer cada
HAVING
grupo
Utilizada para ordenar los registros seleccionados de acuerdo
ORDER BY
con un orden específico
*
Los operadores lógicos permiten comparar expresiones lógicas devolviendo
siempre un valor verdadero o falso. Los operadores lógicos se evalúan de
izquierda a derecha.

Operador Uso
Es el "y" lógico. Evalúa dos condiciones y devuelve un valor
AND
de verdad sólo si ambas son ciertas.
Es el "o" lógico. Evalúa dos condiciones y devuelve un valor
OR
de verdad si alguna de las dos es cierta.
Negación lógica. Devuelve el valor contrario de la
NOT
expresión.
+ (Concatenación) Se usa para unir datos de tipo alfanumérico
*
Operador Uso
< Menor que
> Mayor que
<> != Distinto de
<= Menor o igual que
>= Mayor o igual que
= Igual que

*
Numérico Alfanuméricos Fecha Lógico BLOB Otros

Integer Char Date Bit Image Moneda

Numeric varchar Date Time Text hipervínculo

Decimal adjunto

Float
*
Las funciones agregadas proporcionan a SQL utilidades de cálculo sobre
los datos de las tablas.
Estas funciones se incorporan en las consultas SELECT y retornan un
único valor al operar sobre un grupo de registros.

Función Descripción
Utilizada para calcular el promedio de los valores de
AVG
un campo determinado
Utilizada para devolver el número de registros de la
COUNT
selección
Utilizada para devolver la suma de todos los valores
SUM
de un campo determinado
Utilizada para devolver el valor más alto de un
MAX
campo especificado
Utilizada para devolver el valor más bajo de un
MIN
campo especificado
*
Los predicados son condiciones que se indican en clausula WHERE de una
consulta SQL.

Predicados
SQL
BETWEEN...AND Comprueba que al valor esta dentro de un intervalo
LIKE Compara un campo con una cadena alfanumérica.
ALL Señala a todos los elementos de la selección de la consulta
ANY Indica que la condición se cumplirá si la comparación es cierta
para al menos un elemento del conjunto.
EXISTS Devuelve un valor verdadero si el resultado de una subconsulta
devuelve resultados.
IN Comprueba si un campo se encuentra dentro de un determinado
rango. El rango puede ser una sentencia SELECT.
*
CREATE Create Table pedidos
(
Sintaxis: id_pedido INT(4) NOT NULL
Create Table nombre_tabla AUTO_INCREMENT,
id_cliente INT(4) NOT NULL,
( id_articulo INT(4)NOT NULL,
nombre_campo_1 tipo_1, fecha DATE,
nombre_campo_2 tipo_2, cantidad INT(4),
nombre_campo_n tipo_n, total INT(4),
KEY(id_pedido,id_cliente,id_articulo)
Key(campo_x,...) )
)
Create Table articulos
ALTER (
id_articulo INT(4) NOT NULL AUTO_INCREMENT,
ALTER TABLE personas titulo VARCHAR(50),
RENAME usuarios autor VARCHAR(25),
editorial VARCHAR(25),
precio REAL,
Cambia el nombre de la tabla KEY(id_articulo)
'personas' a 'usuarios' )
*
Hay que empezar por la palabra SELECT, después puedes
poner ALL(Predicado) o nada, a continuación un nombre de
columna(Campos), o varios separados por comas(,), a continuación la
palabra FROM(Clausula) y una expresión-tabla, y por último de forma
opcional puedes incluir la cláusula WHERE con una condición-de-búsqueda.

SELECT Campos FROM Tabla SELECT CodigoPostal, Nombre,


SELECT Nombre, Teléfono FROM Clientes Telefono
FROM Clientes
ORDER BY Nombre

Consulta para traer un registro cuyo campo empiece por


determinado valor. Ejemplo: traer nombre del cliente
donde el campo de dirección empiece por AV, se usa
clausula LIKE
SELECT NOMBRE_CLIENTE FROM TABLA_CLIENTES WHERE
CAMPO_DIRECCION LIKE “AV%”.
Consulta para traer los registros cuyo campo buscado esté
dentro de un rango dado.
Ejemplo: traer los registros de las facturas cuyos números de
facturas estén entre 102 y 118. Para lo cual se usa la clausula
BETWEEN.
SELECT * FROM TABLA_FACTURAS WHERE CODIGO_FACTURA
BETWEEN 102 and 118.

Consulta para sumar un campo de una tabla:


SELECT SUM (CAMPO_VALOR) FROM TABLA_TOTALES

Insertar registros en una tabla:

INSERT INTO "nombre_tabla" ("columna1", "columna2", ...)


VALUES ("valor1", "valor2", ...)

INSERT INTO "Estudiante" (Nombre, Apellido, ...)


VALUES (Andres, wood,...)
*
* Graciasa a la flexibilidad y exactitud de este
lenguaje se pueden realizar consultas a bases
de datos, con una sintaxis sencilla en la que
dejamos claro que deseamos obtener y de
donde obtenerlo, haciendo máximo uso de la
potencia de los sistemas relacionales.
*
¿Que es el lenguaje SQL?
¿Cual es el resultado de utilizar la función agregada MAX en
una consulta?
¿Cual fue el primer modelo de este lenguaje, que se lanzo?
¿Es obligatorio tener un SGBD con interfaz grafica para poder
realizar una modificación a los datos contenidos en una
base de datos?

You might also like