Conferencia 7. Lenguaje SQL Estándar. Ejemplos.

Slides:



Advertisements
Presentaciones similares
Introducción Lenguaje de manipulación de datos (Data Manipulation Language) Permite a los usuarios llevar a cabo las tareas de consulta o manipulación.
Advertisements

integridad referencial
Unidad IV Objetivo de la Unidad:
Teórico: Structured Query Language
SQL G r u p o
IBD Clase 15.
EL LENGUAJE ESTÁNDAR SQL
Unidad 3 Lenguaje SQL Contenidos Que es SQL ? Estructura de SQL
OPERACIONES DE RECUPERACIÓN. WHERE ciudad =‘Las Palmas’; de los suministradores Obtener el código y la situación de Las Palmas SELECT sn, situacion FROM.
Lenguaje SQL (Structured Query Language)
SQL Básico Prof. Nelliud D. Torres.
SQL el Structured Query Language no es mas que un lenguaje estándar de comunicación con bases de datos.
Integrantes: Peter velazques Andres heredia Juan Mendez
COMANDOS DML DML son las siglas de Data Manipulation Language y se refiere a los comandos que permiten a un usuario manipular los datos en un repositorio,
SQL: DDL Francisco Moreno & Carlos Mario Zapata. SQL:DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la Base de Datos Tipos de Objetos:
Diseñando la arquitectura de aplicaciones empresariales. Acceso al SQL Server.- Autenticación de usuario:
SQL (Structured Query Language / Lenguaje de consulta estructurado)‏
IBD CLASE 15. SQL Lenguaje de Consultas Estruturado (SQL) ◦Lenguaje de trabajo estándard para modelo relacional ◦Componentes ◦DDL: Data Definition Language.
Programación en Visual Basic Lección #8: SQL Por Antonio F. Huertas.
Consultas SQL (Base de Datos)
LENGUAJE SQL.
Bases de Datos Sql.
Más ejemplos en SQL Francisco Moreno. S sn snombre situacion ciudad S1 Salazar 20 Londres S2 Jaramillo 10 París S3 Bernal30 París S4 Caicedo 20 Londres.
LENGUAJE ESTRUCTURADO DE CONSULTAS
COMANDOS DML DML son las siglas de Data Manipulation Language y se refiere a los comandos que permiten a un usuario manipular los datos en un repositorio,
Prof. De Bases de Datos: Lcdo. Luis Peña. El lenguaje más habitual para construir las consultas a bases de datos relacionales es SQL, Structured Query.
SQL Lenguaje Estructurado de Consulta MATERIA: diseñar sistemas de información ALUMNO: sarmiento flores Liliana Guadalupe GRUPO: 4° “A” TURNO: matutino.
Diseña y administra base de datos avanzadas
Lenguaje SQL. Permite la definición de la base de datos mediante el lenguaje de definición de datos (DDL, Data Definition Lenguaje) Permite a los usuarios.
 La sentencia SELECT recupera todas las columnas o un subconjunto de ellas de una tabla. Esto afecta a todas las filas de la tabla, a menos que especifiquemos.
Consultas SQL. SQL SQL es un lenguaje de consulta estructurado (Structured Query Languague). Se utiliza para: Eliminar Modificar Consultar La base de.
MSSQL SERVER CURSO BÁSICO 1. CONCEPTOS BASICOS DE SQL. DESCRIPCIÓN DEL CURSO. Sesión 3: Índices Uso, Creación, Tipos, Eliminación LENGUAJE DE CONSULTAS.
Comandos DDL Los comandos DDL son las siglas de Data Definition Language, y se corresponde con el conjunto de órdenes que permiten definir las estructuras.
SQL es el lenguaje de comunicación entre el programa cliente y programa servidor; Oracle es un programa servidor, en el que está la base de datos propiamente.
AA Gerardo Morgade Donato AA Isnel Leyva Herbella.
Unidad 6. Tema 4. Lenguaje de consultas SQL
INTEGRACION DE LAS TECNOLOGIAS DE LA INFORMACION Y COMUNICACION Implementación de base de datos (Lenguaje de manipulación de datos) Ing. Linda Masias Morales.
Structure Query Languaje SQL. Introducción a SQL El lenguaje de consulta estructurado (SQL) es un lenguaje de base de datos normalizado, utilizado por.
Querys a bases de datos con MS ACCESS. DEFINAMOS LOS TERMINOS: DML=Lenguaje de manipulación de datos Las sentencias DML permiten generar consultas para.
COMANDOS SQL. ¿QUÉ ES SQL? El lenguaje de consulta estructurado es un lenguaje declarativo que permite la creación, acceso e interacción de bases de datos.
Conferencia 5. Álgebra y Cálculo Relacional.
SQL: Structured Query Language
Structured Query Language
Lenguaje de manipulación de datos
MYSQL SQL: Lenguaje de consulta estructurado. Es un lenguaje de programación para trabajar con BD relacionadas, entre las cuales tenemos MYSQL, ORACLE,
El punte entre tu y tu base de datos
SEGURIDAD SQL Usuarios, privilegios y perfiles.
Tipos de datos en MYSQL YEAR: Año. “YYYY” o “YY”
SQL: Structured Query Language
Técnicas y Herramientas de Computación
BASES DE DATOS.
Structure Query Languaje
SQL 2: Structured Query Language
SQL: structured Query Language
Lenguaje Estructurado de Consultas
SQL Lenguaje de Consulta Estructurado
Orígenes Funciones Condicionales
Lenguaje de consulta estructurado
Lenguaje SQL Contenidos Que es SQL ? Estructura de SQL
Base de Datos - II . Unidad 1 -SQL.
Structure Query Languaje
4.- Sentencia SELECT simple
Normalmente emparejamos tablas que están relacionadas entre sí y una de las columnas de emparejamiento es clave principal, pues en este caso, Cuando una.
CC Bases de Datos Otoño Clase 5: El Cálculo Relacional + SQL (I)
LENGUAJES DE BASES DE DATOS: SQL
Ing. Francisco Rodríguez
Construcción de elementos de Software 4 MSc. Oscar Mauricio Salazar Ospina MSc Juan Camilo Jaramillo Alzate 15/05/2019Programación distribuida y paralela1.
SQL.
Fundamentos de las Base de Datos. Contenido Que es una Base de Datos. La diferencia entre datos e informacion. Clasificacion de las base de datos. Importancia.
El SQL es el lenguaje estándar ANSI/ISO de definición, manipulación y control de bases de datos relacionales. La sigla que se conoce como SQL corresponde.
Transcripción de la presentación:

Conferencia 7. Lenguaje SQL Estándar. Ejemplos. Bases de Datos Conferencia 7. Lenguaje SQL Estándar. Ejemplos.

Contenido Surgimiento del SQL. Componentes del Lenguaje. Estructuras Básicas. Operadores y Comandos. Consultas de Recuperación. Ejemplos.

Surgimiento Surge como parte de un SGBD relacional denominado System R, a principios de los años 70. Evoluciona y cambia su nombre desde SEQUEL hasta el SQL actual. El último estándar conocido es de los 90.

Componentes del Lenguaje DDL (Data Description Language). DCL (Data Control Language). DML (Data Manipulation Language). Nota: El SQL contiene comandos para sus 3 partes componentes.

Componentes del DDL CREATE TABLE: Crear una tabla en la base de datos. ALTER TABLE: Modificar la estructura de una tabla después de creada. DROP TABLE: Eliminar una tabla.

Componentes del DCL GRANT: Otorgar permisos de acceso a la BD. REVOKE: Quitar privilegios de acceso.

Componentes del DML Aquí se encuentran los comandos encargados de realizar las consultas, además de los que permiten insertar, suprimir y modificar tuplas. Entre los más importantes están: SELECT: Realizar consultas (recuperaciones). INSERT: Insertar tuplas. UPDATE: Modificar tuplas. DELETE: Eliminar tuplas.

Estructura básica del comando SELECT SELECT: Listar los atributos deseados (Proyección del Álgebra). FROM: Listar las tablas (Producto cartesiano del Álgebra). WHERE: Predicado de selección. Contiene atributos de las tablas del FROM. Incluye las expresiones de combinación entre las tablas para el JOIN del Álgebra. Una instrucción SELECT incluye obligatoriamente las cláusulas SELECT y FROM

Ejemplo SELECT snom FROM SUMIN WHERE mun=’H.Vieja’ Recupera los nombres de los suministradores que radican en la H.Vieja. El predicado del WHERE permite expresiones con los operadores lógicos AND, OR, NOT.

Operadores de la cláusula WHERE Además de los operadores lógicos y los de comparación (<, >, >=, <=, =, etc.), existen otros operadores. Éstos son: BETWEEN: Para expresiones que incluyan rango de valores. LIKE: Se emplea en patrones o modelos para las comparaciones de cadenas de caracteres.

Estos operadores de comparación pueden combinarse con NOT Ejemplo SELECT s FROM SP WHERE cant BETWEEN 10 AND 20 Para los patrones del LIKE se emplean los caracteres % y -, que hacen la función de comodines, donde: %: Significa cualquier subcadena. - : Significa cualquier carácter. Estos operadores de comparación pueden combinarse con NOT

Tuplas duplicadas DISTINCT: Para eliminar tuplas duplicadas Su inverso es ALL (valor implícito). Ejemplo: SELECT s FROM SP Se obtienen los mismos s repetidos tantas veces como ellos estén involucrados en un suministro Se evita con: SELECT DISTINCT s FROM SP

Consultas con más de una tabla El “Join” en SQL puede lograrse de la siguiente forma: SELECT snom FROM SUMIN,SP WHERE snum=s AND cant >50 Si en ambas tablas el atributo ‘numero del suministrador’ tuviera el mismo nombre, por ej. snum, se hace uso de nombres calificados: WHERE SUMIN.snum = SP.snum AND cant >50

Consultas anidadas En SQL es posible anidar un SELECT dentro de otro (sin restricciones de profundidad en el anidamiento, al menos en teoría) Ejemplo: Recuperar los nombres de los suministradores que suministran el producto ‘P2’. (Hay más de una forma de obtenerlo en SQL).

Solución FROM SUMIN,SP WHERE snum=s AND p=’P2’ FROM SUMIN Variante 1 (Con el uso del JOIN) SELECT snom FROM SUMIN,SP WHERE snum=s AND p=’P2’ Variante 2 (Con el uso de Consultas Anidadas) SELECT snom FROM SUMIN WHERE snum IN (SELECT s FROM SP WHERE p=’P2’)

Operadores SOME y ALL SELECT pnom FROM PROD WHERE peso>ALL Los operadores IN, SOME, ALL permiten comparación de conjuntos: SOME: Algún ALL: Todos Ejemplo: SELECT pnom FROM PROD WHERE peso>ALL (SELECT peso WHERE color = ’rojo’) Esta consulta encuentra los nombres de los productos cuyo peso es mayor que el peso de los productos de color rojo.

Ordenamiento ORDER BY: Garantiza que las tuplas obtenidas aparezcan en cierto orden. Ejemplo: SELECT snom FROM SUMIN WHERE Mun = ’H.Vieja’ ORDER BY snom El orden implícito es ascendente pero puede especificarse lo contrario con ASC, DESC. El ordenamiento puede ser sobre múltiples atributos.

Funciones de agregación Funciones que operan sobre los valores de una columna. AVG: realiza una media de una columna de datos numéricos. COUNT: cuenta el número de elementos seleccionados en una columna. COUNT(*): cuenta el número de filas en el resultado de la consulta. MIN: determina el menor valor de una columna. MAX: determina el mayor valor de una columna. SUM: proporciona el total de la suma de una columna de datos numéricos

Ejemplos SELECT COUNT(*) FROM SUMIN Devuelve cantidad de suministradores SELECT COUNT(DISTINCT s) FROM SP Cantidad de suministradores que tienen suministros SELECT SUM (cant) WHERE p=’P1’ Suma de las cantidades de ‘P1’ suministradas.

Grupos de tuplas GROUP BY: En esta cláusula se especifica un atributo (o varios atributos) y el efecto es como si se formaran “grupos” en la tabla, donde en cada grupo formado estarán las tuplas con igual valor en el atributo(s) especificado(s) en el GROUP BY

Ejemplo SELECT p, SUM(cant) FROM SP GROUP BY p De esta forma es posible calcular la suma de la cantidad suministrada, no sólo para el producto ‘P1’, sino para todos los productos.

Ejemplo SELECT pnom FROM PROD También es posible usar funciones en una subconsulta: SELECT pnom FROM PROD WHERE peso> (SELECT AVG(peso) FROM PROD)

Condiciones para grupos HAVING: Se emplea para declarar una condición o predicado para que sea aplicado a los grupos y no a las tuplas. Ejemplo: SELECT p,SUM(cant) FROM SP GROUP BY p HAVING SUM(cant) > 100

GROUP BY y HAVING El empleo de GROUP BY y HAVING exige que: cada expresión del SELECT tenga un solo valor por grupo. la expresión de HAVING tenga un solo valor por grupo. Es decir, no es posible tener: SELECT p,cant From SP Group By p Having cant>100 porque cant no tiene un solo valor para cada p

Ejemplo SELECT AVG(cant) FROM SUMIN,SP WHERE SUMIN.snum=SP.s AND mun =‘Plaza’ GROUP BY SP.s HAVING COUNT(DISTINCT p)  3 En este ejemplo se calcula el valor promedio del atributo cant para aquellos suministradores que radican en Plaza y que, además, suministran más de tres productos diferentes.

Comandos para modificar tuplas DELETE Ejemplos: 1) DELETE From PROD Where peso Between 10 and 50 2) DELETE From SP

Comandos para modificar tuplas INSERT INTO INSERT INTO R[(atr[,atr…])] VALUES (constante[,constante…]) para una tupla. SELECT …. FROM.. . WHERE… para varias tuplas

Ejemplos 1) INSERT INTO SUMIN (snum,snom,mun) VALUES (‘S6’,’Perez’,’Cerro’) 2) INSERT INTO SUMIN (snum,snom,mun) SELECT snum,snom,mun FROM STEMP WHERE mun=’Cerro’

Comandos para modificar tuplas UPDATE Cambiar los valores de las tuplas deseadas. UPDATE R SET Atr=Exp[,Atr=exp..] Where P

Ejemplo Update PROD Set color = ‘rojo’ peso = peso + 5 Where pnum=’P1’

Vistas AS <comando SELECT que la define> Las vistas son el resultado de operaciones del Álgebra Relacional sobre tablas o entre tablas y otras vistas almacenándose de ellas en la BD sólo su definición, es decir, el comando que las define. CREATE VIEW <Nombre> AS <comando SELECT que la define>

Ejemplo CREATE VIEW CantProd As SELECT p, SUM(cant) FROM SP GROUP BY p DROP VIEW < Nombre> para eliminar la vista de la BD

Combinación Interna INNER JOIN: En el resultado se incluyen sólo las filas que “ casan” en las tablas combinadas. Corresponde al JOIN del Álgebra relacional. Ejemplo: SELECT SUMIN.snom, SP.p, SP.cant; FROM SUMIN INNER JOIN SP ON SUMIN.snum = SP.s Nombres de los suministradores que tienen suministros junto con el # del producto y la cantidad que de este se suministra

Combinaciones externas LEFT JOIN: Incluye todas las filas de la tabla de la izquierda (la que aparece a la izquierda de la palabra LEFT) y las que casan de la derecha. Ejemplo: SELECT SUMIN.snom, SP.p, SP.cant; FROM SUMIN LEFT OUTER JOIN SP ON SUMIN.snum = SP.s Todos los suministradores. En el caso de los que no tienen suministros, en las columnas p y cant aparece un NULL.

Combinaciones externas RIGHT JOIN: Incluye todas las filas de la tabla de la derecha, más las que casan. Si la tabla de la derecha es una tabla secundaria en una relación (como lo es SP respecto a SUMIN), esta operación sirve para encontrar las violaciones de la integridad referencial en un sistema que no la chequee. Rellena con NULL los campos en que no haya valores por tratarse de filas que no casan.

Combinaciones externas FULL JOIN: Incluye todas las filas de las 2 tablas, casen o no.

Conclusiones. Estándar para la recuperación de información en modelos relacionales. Lenguaje de recuperación formalizado sobre el álgebra y cálculo relacional.

Estudio Independiente Definir las vistas en el caso de estudio de la asignatura que permitan: Listar los datos de los obreros cuyo salario sea mayor de 200 pesos. Determinar el nombre de cada empresa asociada a la entidad agrícola y la cantidad de trabajadores de cada una de ellas.