lenguaje estructurado de consulta

20

Upload: maria-garcia

Post on 12-Apr-2017

97 views

Category:

Education


3 download

TRANSCRIPT

Page 1: Lenguaje estructurado de consulta
Page 2: Lenguaje estructurado de consulta

SQL nos permite realizar consultas a la base de datos. Pero el nombre se queda corto ya que SQL además realiza funciones de definición, control y gestión de la base de datos.

Es un lenguaje de acceso a bases de datos que explota la flexibilidad y potencia de los sistemas relacionales y permite así gran variedad de operaciones.

Page 3: Lenguaje estructurado de consulta

A continuación se muestra el esquema relacional, con los atributos y las calves primarias

subrayadas.

ESTUDIANTE (IdEstudiante, IdDocente, NombreApellido, FechaNac, Direccion, Telefono, E-mail, Celular, Edad, Peso, Talla, Grado, Grupo, Jornada, IdFamiliar) FAMILIAR (IdFamiliar, NombreApellido, FechaNac, Direccion, Telefono, E-mail, Celular, NivelAcadémico, RasgoFamiliar) INFOACADEMICA (CodEstudiante, NomColProce, GradosCursados, TipoInstuEdu, MotivoRetiro, FechaRetiro) SEGURIDADSOCIAL (NomEntAseguradora, TipoSegSocial, IdEstudiante) ANOTACION (IdAnotacion, CodEstudiante, CodDocente, FechaAnotación, ObserRealizada, AcciónTomada, Seguimiento, Compromisos) DOCENTEDIRGRUPO (IdDocente, NombreApellidos, Dirección, Teléfono, E-mail, Profesión, GradoAcargo) DETALLE (IdEstudiante, IdDocente, AñoLectivo)

Page 4: Lenguaje estructurado de consulta

El lenguaje está compuesto por comandos, clausulas, operadores y funciones agregadas. Estos elementos

se combinan en las instrucciones para crear, actualizar y manipular las bases de datos.

Comandos DLL Comando Descripción

CREATE Utilizado para crear nuevas tablas, campos e índices

DROP Empleado para eliminar tablas e índices

ALTER Utilizado para modificar las tablas agregando campos o cambiando la definición de los campos.

Page 5: Lenguaje estructurado de consulta

Comandos DML

Comando Descripción

SELECT Utilizado para consultar registros de la base de datos que satisfagan un

criterio determinado.

INSERT Utilizado para insertar o adicionar datos en la base de datos en una

única operación

UPDATE Utilizado para modificar los valores de los campos y registros

especificados.

DELETE Utilizado para eliminar registros de una tabla de una base de datos.

Page 6: Lenguaje estructurado de consulta

Clausulas: son condiciones de modificación utilizadas para definir los datos que desea

seleccionar o manipular.

Clausula Descripción

FROM Utilizada para especificar la tabla de la cual se van a seleccionar los

registros

WHERE Utilizada para especificar las condiciones que deben reunir los registros que

se van a seleccionar

GROUP BY Utilizada para separar los registros seleccionados en un grupo especifico

HAVING Utilizada para expresar la condición que debe satisfacer cada grupo

ORDER BY Utilizada para ordenar los registros seleccionados de acuerdo con un orden

especifico.

Page 7: Lenguaje estructurado de consulta

OPERADORES LÓGICOS

Operador Uso

AND Es el “Y” lógico. Evalúa dos condiciones y devuelve un valor de verdad sólo 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.

Page 8: Lenguaje estructurado de consulta

OPERADORES DE COMPARACIÓN

Operador Uso

< Menor que

> Mayor que

<> Distinto de

<= Menor igual que

>= Mayor 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

Page 9: Lenguaje estructurado de consulta

FUNCIONES DE AGREGADO: se usan dentro de una clausula SELECT en grupos de registros para devolver un único valor que se aplica a un grupo de registros.

Función Descripción

AVG Utilizada para calcular el promedio de los valores de un campo determinado

COUNT Utilizada para devolver el número de registros de la selección

SUM Utilizada para devolver la suma de todos los valores de un campo determinado

MAX Utilizada para devolver el valor más alto de un campo especificado

MIN Utilizada para devolver el valor más bajo de un campo especificado

Page 10: Lenguaje estructurado de consulta

La estructura básica de una expresión SQL consiste en tres clausulas: select, from y

where. Las consultas habituales de SQL tienen la forma:

select A1, A2, …, An

from r1, r2, …, rm

where P

Donde cada A1 representa un atributo, r1 una relación (las tablas) y P el predicado, el

cual es la expresión a validar.

Page 11: Lenguaje estructurado de consulta

Cláusula select Considere la consulta simple, basada en el ejemplo el Observador

del estudiante: Obtener el nombre de todos los estudiantes de la

relación Estudiante. La consulta queda de la siguiente forma:

SELECT NombreApellido

FROM ESTUDIANTE

Recuerde que: debe tener presente que los nombres

de los atributos y de las tablas, deben estar escritos con

la misma gramática utilizada al momento de

diagramarlas.

Cláusula from En esta cláusula se indican la tabla o tablas a las que vamos a tener

acceso. Las tablas deben existir, si se enuncia una tabla en esta

cláusula que no esté especificada generara un error en la consulta.

Page 12: Lenguaje estructurado de consulta

Cláusula select

Obtener los nombre de las instituciones de donde

proceden los estudiantes, la consulta se realiza de la

siguiente forma:

select NomColeProce

from INFOACADEMICA

En esta consulta se pueden generar datos duplicados ya

que varios estudiantes pueden proceder de la misma

institución educativa, si deseamos que no halla

duplicados utilizamos la palabra distinct después del

select, es decir:

Select distinct NomColeProce

from INFOACADEMICA

Si queremos consultar todos los datos de una

tabla utilizamos el símbolo asterisco “*”, como

se expresa a continuación:

Select *

from DocenteDirGrupo

Page 13: Lenguaje estructurado de consulta

Cláusula WHERE

Se utiliza para seleccionar aquellos registros que cumplen una o más condiciones. Observemos el siguiente ejemplo:

“obtener todos los estudiantes que pertenezcan al grado 6A”, la consulta se escribe de la siguiente forma:

select GradoGrupo

from ESTUDIANTE

where GradoGrupo = ‘6A’

observemos el siguiente ejemplo en el cual se utilizan los operadores lógicos y operadores de comparación:

“obtener todos los estudiantes que pertenezcan al grado 6A y tengan más de 12 años de edad”

select GradoGrupo

from ESTUDIANTE

where GradoGrupo = ‘6A’ and Edad > 12

Page 14: Lenguaje estructurado de consulta

Cláusula WHERE

Si deseamos conocer más de un atributo de la consulta que se esté realizando solo lo incluimos en la

cláusula select, tomando el ejemplo anterior la consulta quedaría de la siguiente forma:

select GradoGrupo, Edad

from ESTUDIANTE

where GradoGrupo = ‘6A’ and Edad > 12

Page 15: Lenguaje estructurado de consulta

Borrado Crea una consulta de elimina registros de una o más de las tablas listadas en las clausula

from que satisfagan la cláusula where. Las solicitudes de borrado se expresan casi igual

que las consultas. Solo se pueden borrar tuplas completas y no se puede borrar solo

valores de atributos concretos. La sintaxis utilizada es la siguiente:

delete from r

where P;

Donde P representa el criterio y r la relación. Se puede utilizar delete para eliminar

registros de una única tabla o desde carios lados de una relación uno a muchos. Si se desea

borrar tuplas de varias relaciones hay que utilizar una orden delete por cada relación.

Page 16: Lenguaje estructurado de consulta

Borrado

Ejemplos utilizando la consulta delete:

Borra todas las tuplas de la relación DETALLE

delete from DETALLE

Borra todas las tuplas con E-mail de la tabla ESTUDIANTE

delete from ESTUDIANTE

where E-mail <> NULL;

Borrar todas las profesiones que sean iguales a Administración de la tabla DOCENTEDIRGRUPO.

delete from DocenteDirGrupo

where Profesion = ‘Adminsitracion’

Page 17: Lenguaje estructurado de consulta

Inserción Por medio de esta consulta se agrega un registro en una tabla. Se le conoce como una

consulta de datos añadidos. Esta consulta puede ser de dos tipos: insertar un único registro o

insertar en una tabla los registros contenidos en otra tabla.

Para insertar los registros en una relación, se especifica la tupla que se desea insertar, se

debe tener encuenta que los valores de los atributos de las tuplas que se inserten deben

pertenecer al dominio de los atributos y deben estar en el mismo orden en que fueron

registrados en las tablas.

La sintaxis es la siguiente:

insert into tabla

values (valaor1, valor2, valorN…)

Page 18: Lenguaje estructurado de consulta

Inserción supóngase que se desea insertar la información académica de un nuevo estudiante, la identificación del

estudiante es 11002247858, colegio de procedencia Institución Educativa San Juan Bautista, ultimo

grado realizado séptimo (7) de secundaria, jornada matinal, colegio público, el retiro se debió a

traslado de los padres, no repitió ningún grado y se retiró en el año 2012. La consulta queda de la

siguiente forma:

insert into INFOACDEMICA

values (11002247858, ‘Institución Educativa San Juan Bautista’, ‘Séptimo’, ‘Matinal’, ‘Publico’,

‘Traslado de los padres’, ‘No repitió ningún grado’, ‘2012’);

Page 19: Lenguaje estructurado de consulta

Actualización

En determinadas situaciones se ve la necesidad de modificar un valor dentro de una tupla sin

cambiar tos los valores de estas, para ello se debe utilizar la instrucción update. La sintaxis

es:

update tabla

set campo1=valor1, campo2=valor2,…

where criterio;

Page 20: Lenguaje estructurado de consulta

Actualización

Actualizar el año lectivo de la tabla DETALLE

update DETALLE

set añolectivo = 2013

Actualizar el grado a cargo del docente director de grupo Leyla Ruiz

Update DOCENTEDIRGRUPO

Set GrupoAcargo = ‘6A’

Where NombreApellido = ‘Leyla Ruiz’

Actualizar todos los registros de la taba SEGURIDADSOCIAL

update SEGURIDADSOCIAL

set NomSeguridadSS = ‘FAMISALUD’