Bases de Datos Relacionales III
|
|
- Gerardo Bustamante Martin
- hace 6 años
- Vistas:
Transcripción
1 Introducción a la Computación Bases de Datos Relacionales III Esteban E. Mocskos (emocskos@dc.uba.ar) Facultad de Ciencias Exactas y Naturales, UBA CONICET 11/06/2013 E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
2 Resumen La clase pasada vimos estos conceptos Clave foránea (Foreign Key) Distintos sabores de SELECT. Las consultas SQL tiene la siguiente forma: Forma general de una query SELECT FROM WHERE FROM: es una lista de nombres de tablas separadas por coma. WHERE: es una expresión de tipo Boolean, si da True se incluye el registro en el conjunto de salida. Si no hay, se lo toma como TRUE para todos los registros evaluados (se incluyen todos). SELECT: es una lista de nombres de campos separados por coma, son los campos que se incluyen en el resultado. Si se usa SELECT * se devuelven todos los campos. E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
3 Producto cartesiano La definición viene de la teoría de conjuntos. A B resulta en otro conjunto cuyos elementos son todos los pares ordenados que se forman tomando el primer elemento del primer conjunto, y el segundo elemento del segundo conjunto. Por ejemplo: A = {1, 2, 3, 4} y B = {a, b}, su producto cartesiano es: A B = {(1, a), (1, b), (2, a), (2, b), (3, a), (3, b), (4, a), (4, b)} El producto cartesiano también puede calcularse en SQL (en lenguaje de Base de Datos, se nota A.B): Producto cartesiano en SQL SELECT * FROM A, B E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
4 Join El resultado obtenido al hacer el producto cartesiano puede ser bastante grande. Si A = n, B = m, entonces A B = n m. La combinación del producto cartesiano y la selección de una parte es común en las queries. Por este motivo, se crea una operación especial que se llama join. Hacer un join es filtrar del producto cartesiano, aquellos pares ordenados que cumplan con una condición particular (un predicado). Por ejemplo: A = {1, 2, 3, 4} y B = {a, b}, A B = {(1, a), (1, b), (2, a), (2, b), (3, a), (3, b), (4, a), (4, b)} Predicado: la primer coordenada sea mayor a 2. Producto cartesiano en SQL SELECT * FROM A, B WHERE A.field> 2 A diferencia de los conjuntos, las tablas tienen campos con nombre. E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
5 Las tablas con las que estuvimos trabajando DEPT DEPTNO DNAME LOC 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON EMP EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO 7369 SMITH CLERK DEC ALLEN SALESMAN FEB WARD SALESMAN FEB JONES MANAGER APR MARTIN SALESMAN SEP BLAKE MANAGER MAY CLARK MANAGER JUN SCOTT ANALYST DEC KING PRESIDENT 17-NOV TURNER SALESMAN SEP ADAMS CLERK JAN JAMES CLERK DEC FORD ANALYST DEC MILLER CLERK JAN E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
6 Trabajando con un join Cómo haríamos una consulta que devuelva los empleados junto con el nombre del deptarmento en el que trabajan? Primer consulta con join SELECT * FROM DEPT, EMP WHERE EMP.DEPTNO=DEPT.DEPTNO Cuántos registros tiene el resultado? EMP.DEPT(EMP.DEPTNO=DEPT.DEPTNO) EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO DEPTNO DNAME LOC 7369 SMITH CLERK DEC RESEARCH DALLAS 7499 ALLEN SALESMAN FEB SALES CHICAGO 7521 WARD SALESMAN FEB RESEARCH DALLAS 7566 JONES MANAGER APR RESEARCH DALLAS 7654 MARTIN SALESMAN SEP RESEARCH DALLAS 7698 BLAKE MANAGER MAY RESEARCH DALLAS 7782 CLARK MANAGER JUN RESEARCH DALLAS 7788 SCOTT ANALYST DEC RESEARCH DALLAS 7839 KING PRESIDENT 17-NOV RESEARCH DALLAS 7844 TURNER SALESMAN SEP RESEARCH DALLAS 7876 ADAMS CLERK JAN RESEARCH DALLAS 7900 JAMES CLERK DEC RESEARCH DALLAS 7902 FORD ANALYST DEC RESEARCH DALLAS 7934 MILLER CLERK JAN RESEARCH DALLAS Debería tener tantos como la tabla original EMP E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
7 Un poco de detalle Qué pasó con los departamentos BOSTON y NEW YORK? No aparecen en ningún registro del resultado. Por qué? Procedimiento de join crear una tabla temporaria T foreach t A do foreach u B do if predicado(t u) then insertar t u en T fi od od devolver T En este caso t u corresponde a crear un nuevo registro en base a la concatenación de los registros t y u. E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
8 Cambiemos levemente el problema DEPT DEPTNO DNAME LOC 10 ACCOUNTING NEW YORK 20 RESEARCH DALLAS 30 SALES CHICAGO 40 OPERATIONS BOSTON EMP EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO 7521 WARD SALESMAN FEB JONES MANAGER APR MARTIN SALESMAN SEP BLAKE MANAGER MAY CLARK MANAGER JUN SCOTT ANALYST DEC KING PRESIDENT 17-NOV TURNER SALESMAN SEP ADAMS CLERK JAN JAMES CLERK DEC E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
9 Qué pasaría en este caso? Supongamos que al quitar los registros (solo por comodidad) no rompí ninguna de las restricciones existentes. Ejecutemos la siguiente consulta: Misma consulta que antes SELECT * FROM DEPT, EMP WHERE EMP.DEPTNO=DEPT.DEPTNO Cuántos registros devuelve? EMP.DEPT(EMP.DEPTNO=DEPT.DEPTNO) EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO DEPTNO DNAME LOC 7521 WARD SALESMAN FEB RESEARCH DALLAS 7698 BLAKE MANAGER MAY RESEARCH DALLAS 7788 SCOTT ANALYST DEC RESEARCH DALLAS 7839 KING PRESIDENT 17-NOV RESEARCH DALLAS 7844 TURNER SALESMAN SEP RESEARCH DALLAS 7876 ADAMS CLERK JAN RESEARCH DALLAS Solo quedan aquellos que evalúa a TRUE el predicado o propiedad, aquellos que no tiene contraparte, se descartan. E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
10 Otra forma de expresar la misma consulta Esto se llama impĺıcita: SELECT * FROM DEPT, EMP WHERE EMP.DEPTNO=DEPT.DEPTNO Esta se llama forma expĺıcita: SELECT * FROM DEPT JOIN EMP ON EMP.DEPTNO=DEPT.DEPTNO Las dos dan el mismo resultado. E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
11 Más formas de hacer joins Natural join: SELECT * FROM DEPT NATURAL JOIN EMP. Es una manera corta de hacer un join por igualdad entre las columnas cuyos nombres coinciden en las dos tablas (en el caso particular del ejemplo, se compara DEPTNO en las dos tablas). Outer join: a diferencia del join que vimos hasta ahora, no se descarta los registros que no tiene contraparte en la otra tabla, se dejan en el resultado y se completa la información faltanto con NULL. Se usa la sintaxis expĺıcita. Hay tres tipos: left outer joins: se dejan todos los registros de la tabla de izquierda. right outer joins: idem anterior, pero se dejan todos los de la tabla de la derecha full outer joins: adivinen... E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
12 Aggregations Las funciones de agregación (Aggregation functions) son funciones definidas de un conjunto o multiconjunto (que admite repetición) a un único valor. Ejemplo: min({42, 57, 5, 13, 27})= 5. La función mínimo toma un conjunto de valores y devuelve el mínimo de todos ellos (va de un conjunto a un único valor). Las funciones de agregación se utilizan para extraer información a partir de un conjunto de valores o registros. En la terminología de base de datos, se las conoce como funciones de grupo (group functions). En este caso, la función toma como entrada el conjunto de valores de una columnas (o un subconjunto de una columna) y devuelve un único valor. Los principales usos son: estadísticas, análisis de datos, generación de reportes. En el standard SQL-92 se definen cinco funciones principales de agregación: COUNT, SUM, AVG, MAX, MIN. Algunos DBMS tienen otras adicionales: CORRELATION, STDDEV, VARIANCE, FIRST, LAST. Puede haber más, hay que mirar la documentación del motor utilizado. E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
13 Cómo funciona la agregación Algunas funciones de agregación son sensibles a tener duplicados: SUM, COUNT, AVG Algunos no son sensibles a duplicados: MIN, MAX Hay que tener a mano el uso de DISTINCT para evitarse problemas. Ejemplo de uso de agrecición SELECT MAX(SAL), AVG(SAL) FROM EMP Restricciones de las queries con funciones de agregación: No se pueden anidar. Las funciones de agregación no pueden usarse en el WHERE: WHERE SUM(A)>200 no funciona! En este tipo de consultas, no se pueden agregar otras columnas que no sean funciones de agregación: SELECT SAL, MGR, AVG(SAL) FROM EMP no funciona! E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
14 GROUP BY GROUP BY se usa para construir particiones de los registros de una tabla (subconjuntos disjuntos, intersección vacía entre ellos). Las funciones de agregación puede aplicarse, entonces a las particiones individualmente, logrando tener resultados parciales. Ejemplo de uso de GROUP BY SELECT JOB, MAX(SAL), AVG(SAL) FROM EMP GROUP BY JOB De esta manera, se pueden obtener los datos por tipo de salario (se agrupan los registros que tienen igual JOB). Por como esta definido el GROUP BY, necesariamente tiene que tener un atributo que es único para cada partición de los registros (en nuestro ejemplo es JOB). Esto atributos pueden agregarse al SELECT E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
15 HAVING Vimos que las funciones de agregación no pueden usarse en el WHERE. Si queres filtrar alguna de las particiones que devuelve el GROUP BY, Cómo podríamos hacer? Se puede combinar GROUP BY con HAVING para quedarse solo con aquellas particiones que cumplan con alguna condición. Por ejemplo, nos podemos quedar con los que tengan promedio de salario superior a 10000: Ejemplo de uso de GROUP BY filtrado con HAVING SELECT JOB, MAX(SAL), AVG(SAL) FROM EMP GROUP BY JOB HAVING AVG(SAL)>10000 La condición del HAVING solo puede incluir a las funciones de agregación y a los atributos que definen las particiones del GROUP BY. E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
16 Tarea Usando las tablas EMP y DEPT que definos durante las clase pasadas, hacer: 1 Modificar el esquema de base de datos usando SQLite Studio para modelar el sueldo bruto mensual de cada empleado. Seleccionar los atributos y las modificaciones necesarias al esquema anterior. 2 Llenar La tabla nueva con información de prueba (una cantidad de registros razonables) que incluya las sueldos de al menos cuatro empleados durante los años 2005, 2006, 2007 y Hacer una consulta que devuelva el mayor de los sueldos de todos los tiempos. 4 Hacer una consulta que devuelva el promedio histórico de sueldos para los vendedores. 5 Hacer una consulta que devuelva todos los sueldos en un período dado para un departamento dado. 6 Hacer una consulta que devuelva el salario máximo, el mínimo y el promedio agrupado por Departamento (deberá mostrar el nombre de departamento en el resultado de la consulta). 7 Hacer una consulta que devuelva el salario máximo, el mínimo y el promedio agrupado por tipo de trabajo, pero solo si el sueldo promedio del grupo es mayor al promedio general de la empresa. E. Mocskos (UBA CONICET) Clase 15: Bases de Datos III 11/06/ / 16
Informática Básica Práctica Tema 3 Ejercicios de SQL
Informática Básica Práctica Tema 3 Ejercicios de SQL Curso 2010-2011 1. Descripción del modelo de datos El modelo de datos que se usará para las consultas está reflejado en el siguiente modelo E-R. EMPNO
Más detallesBases de Datos I Práctica 1 Ejercicios de SQL
Bases de Datos I Práctica 1 Ejercicios de SQL Curso 2005-2006 1. Descripción del modelo de datos El modelo de datos que se usará para las consultas está reflejado en el siguiente modelo E-R. Transformado
Más detallesBases de Datos Ejercicios de SQL
Bases de Datos Ejercicios de SQL 1. Descripción del modelo de datos El modelo de datos que se usará para las consultas está reflejado en el siguiente modelo E-R. EMPNO ENAME JOB DEPTNO DNAME DEPT (0,N)
Más detallesUnidad. Lenguaje SQL. (Structured Query Language)
Unidad Lenguaje SQL (Structured Query Language) 1 SQL Definición DDL Consulta y Actualización DML Create Alter Drop Select Insert Update Delete 2 SQL DDL CREATE TABLE nombre_tabla (nombre_columna tipo_dato/dominio
Más detallesAmpliación de Bases de Datos Práctica 1: El lenguaje PL/SQL de Oracle Sesión 1: Introducción al PL/SQL
Ampliación de Bases de Datos Práctica 1: El lenguaje PL/SQL de Oracle Sesión 1: Introducción al PL/SQL Dado el siguiente esquema relacional y su definición en Oracle que se encuentra definida en vuestro
Más detallesEjercicios SQL - Select TutorialesNET Versión 1.0 - Revisión 1 25 de julio de 2015
Ejercicios SQL - Select TutorialesNET Versión 1.0 - Revisión 1 25 de julio de 2015 Manoel Antón Folgueira Hernández manoel@tutorialesnet.net http://tutorialesnet.net Página 1 de 13 Índice 1. Introducción
Más detallesCreación de Vistas. Copyright Oracle Corporation, 1998. All rights reserved.
12 Creación de Vistas Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir una Vista Crear una vista Recupera
Más detallesTutorial de SQL - El comando SELECT
Tutorial de SQL - El comando SELECT El objetivo de este documento es guiar su aprendizaje del comando SELECT de SQL. La idea es que, estando conectado a sql*plus, lea este material mientras ejercita simultáneamente
Más detallesEscribiendo sentencias básicas de SQL
Escribiendo sentencias básicas de SQL Escribiendo Querys básicos 2-12 M.C. Luis Antonio Gama Moreno Introducción a SQL-Server 2-1 Objetivos Al terminar esta lección, deberá ser capaz de hacer lo siguiente
Más detallesSubconsultas Multi-Columna. Copyright Oracle Corporation, All rights reserved.
7 Subconsultas Multi-Columna Copyright Oracle Corporation, 1997. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Escribir una subconsulta multi-columna
Más detallesEscritura Básica de Sentencias SQL. Copyright Oracle Corporation, All rights reserved.
1 Escritura Básica de Sentencias SQL Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Enumerar las posibilidades
Más detallesUNIDAD DE TRABAJO 2: BASES DE DATOS RELACIONALES
UNIDAD DE TRABAJO 2: BASES DE DATOS RELACIONALES TEMA 6: CONSULTAS (parte 3) 6.21. INTRODUCCIÓN En este tercer tema sobre consultas veremos: Revisaremos las subconsultas, comenzando con una introducción
Más detallesDatos Agregados por medio de Funciones de Grupo. Copyright Oracle Corporation, 1998. All rights reserved.
5 Datos Agregados por medio de Funciones de Grupo Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería ser capaz de hacer lo siguiente: Identificar las
Más detallesConstraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved.
11 Constraints (Restricciones) Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir constraints Crear y mantener
Más detallesTema 4. Manipulación de datos con SQL
Tema 4 Manipulación de datos con SQL Índice Tema 4 1. Inserción de registros. Consultas de datos anexados. 2. Modificación de registros. Consultas de actualización. 3. Borrado de registros. Consultas de
Más detallesSubconsultas. Copyright Oracle Corporation, 1997. All rights reserved.
6 Subconsultas Copyright Oracle Corporation, 1997. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir los tipos de problemas que las subconsultas
Más detallesManual de introducción SQL Centro de Tecnología Informática
Manual de introducción SQL Centro de Tecnología Informática web1.cti.unav.es/cti/manuales/intro_sql/indice.html Universidad de Navarra 1. CONCEPTO DE BASE DE DATOS 2. EL LENGUAJE DE GESTIóN DE BASES DE
Más detalles3. El catálogo 26. Laboratorio de Bases de Datos
ÍNDICE Continuación SQL Índice 1. Continuación del SQL como DML (Lenguaje de Manipulación de Datos) 1 1.1. Inserción de datos................................. 1 1.2. Borrado de datos..................................
Más detallesIntroducción a SQL sobre Oracle
Laboratorio de Bases de Datos Introducción a SQL sobre Oracle Luis A. González Ares Contenido Lenguaje SQL sobre Oracle. Descripción de las características y elementos fundamentales del lenguaje. Ejercicios
Más detallesPracticas de BB. DD. ORACLE
1 Practicas de BB. DD. ORACLE Oracle Es un sistema gestor de Bases de datos relacionales, y utiliza, para consultar los datos que mantiene, el lenguaje SQL. Este lenguaje es el que se analiza a continuación,
Más detallesTema 2. Bases de Datos Relacionales
Tema 2. Bases de Datos Relacionales Conceptos de BD relacionales Codd propone el modelo relacional para bases de datos en 1970. Ésta es la base para la construcción de los SGBDR. El modelo relacional consiste
Más detallesManipulación de Datos. Copyright Oracle Corporation, 1998. All rights reserved.
9 Manipulación de Datos Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir cada sentencia DML Insertar filas
Más detallesIntroducción al lenguaje SQL
Introducción a SQL Introducción al lenguaje SQL Contenidos Introducción al lenguaje SQL Sentencia SELECT: lista SELECT, FROM, WHERE CREATE TABLE INSERT, DELETE y UPDATE Bibliografía Beaulieu, A.: Aprende
Más detallesVistas en InformiX Sistemas de Bases de Datos II EMT CETP A/S Leonardo Carámbula
Vistas en InformiX Características Una vista es una tabla virtual cuyo contenido está definido por una consulta SELECT. Al igual que una tabla real, una vista tiene: un nombre un conjunto de columnas con
Más detallesUniversidade da Coruña Departamento de Computación. Ampliación de SQL. Luis A. González Ares.
HAC LUCE Universidade da Coruña Departamento de Computación Ampliación de SQL Luis A. González Ares lgares@udc.es Ampliación de SQL Planteamiento Objetivos Describir algunos de los elementos que más recientemente
Más detallesMaestría en Bioinformática. Bases de Datos y Sistemas de Información SQL: SELECT. Ing. Alfonso Vicente, PMP
Maestría en Bioinformática Bases de Datos y Sistemas de Información SQL: SELECT Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda SELECT en una tabla Joins Proyección y selección DISTINCT Funciones
Más detallesMANUAL BÁSICO DEL LENGUAJE SQL
MANUAL BÁSICO DEL LENGUAJE SQL INTRODUCCIÓN A continuación se presentan lo que son comandos DLL y DML, las clausulas, lo operadores (lógicos y de comparación), funciones de agregado, consultas, tipos de
Más detallesDesarrollo de Aplicaciones Informáticas
Desarrollo de Aplicaciones Informáticas CICLO FORMATIVO DE GRADO SUPERIOR FORMACIÓN PROFESIONAL A DISTANCIA Unidad 3 SQL y el modelo relacional - LMD MÓDULO Desarrollo de Aplicaciones en Entornos de Cuarta
Más detallesInstalación de oracle en GNU/Linux Debian o Ubuntu.
Instalación de oracle en GNU/Linux Debian o Ubuntu. 5 de diciembre de 2007 Copyright (c) 2007 Santa. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free
Más detallesDependiendo de las tareas, podemos clasificar las sentencias SQL en dos tipos:
CONTENIDO. 1. INTRODUCCIÓN 2. TIPOS DE SENTENCIAS SQL 3. TIPOS DE DATOS 4. SQL PLUS 5. CONSULTAS DE DATOS 6. RESTRICCIÓN Y CLASIFICACIÓN DE LOS DATOS 7. FUNCIONES A NIVEL DE FILA 8. VISUALIZACIÓN DE DATOS
Más detallesCAPITULO II Base de datos. Tipos de base de datos. Comandos y consultas. Tipos de bases de datos Comandos y consultas O B J E T I V O S
BASE DE DATOS TIPOS DE BASES DE DATOS CONSULTAS Y SUB CONSULTAS EN SQL SERVER 2005 2 Tipos de bases de Comandos y consultas C O N T E N I D O 1. El Lenguaje de Gestión de Datos 2. Creación de una tabla
Más detallesCreación y Gestión de Tablas. Copyright Oracle Corporation, 1998. All rights reserved.
10 Creación y Gestión de Tablas Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería a ser capaz de hacer lo siguiente: Describir los principales objetos
Más detallesBASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Algebra Relacional y SQL
BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Algebra Relacional y SQL Lledó Museros / Ismael Sanz museros@icc.uji.es / isanz@icc.uji.es 1de 60 Índice 1. Introducción 2. Operadores del Álgebra
Más detalles1. Lenguaje de Definición de Datos. 2. Lenguaje de Manipulación de. Datos. M. C. Gustavo Alfonso Gutiérrez Carreón
1. Lenguaje de Definición de Datos 2. Lenguaje de Manipulación de Datos M. C. Gustavo Alfonso Gutiérrez Carreón Los 'sistemas de gestión de bases de datos (en inglés database management system, abreviado
Más detallesConsultas SQL INNER JOIN
Consultas SQL INNER JOIN Inner join sólo produce los registros que coinciden en las dos tablas A y B. 2. INNER JOIN TablaB Full outer join produce el conjunto de todos los registros en las tablas A y B,
Más detallesDiseño de bases de datos Práctica-1 Definición de datos
Departamento de Lenguajes y Sistemas Informáticos Avda Reina Mercedes s/n. 41012 Sevilla Tlf/Fax 954 557 139 E-mail lsi@lsi.us.es www.lsi.us.es E.T.S. Ingeniería Informática Diseño de bases de datos Práctica-1
Más detallesm046a Curso Consultando SQL Server 2005/2008 con Transact-SQL, 15 h
Alias Nombres Tablas ( L19 ) UNA VEZ INDICADO SE UTI LIZAN EN LAS CONSULTAS, EN LUGAR DE ESCRIBIR EL NOMBRE COMPLETO DE LA TABLA SE INDICAN EN LA CLAÚSULA FROM PALABRA CLAVE OPCIONAL AS SINTAXIS [ FROM
Más detallesIntroducción a SQL. Bloque III (Prácticas) Informática Básica - Curso 2010/2011
Introducción a SQL Bloque III (Prácticas) Informática Básica - Curso 2010/2011 Introducción al lenguaje SQL Contenidos Introducción al lenguaje SQL Sentencia SELECT: lista SELECT, FROM, WHERE CREATE TABLE
Más detallesGONZALEZ VARGAS ANA KAREN GUTIERREZ MUNGUIA LUIS DANIEL TELLEZ ARCOS DIANA FATIMA PROBLEMA A RESOLVER
GONZALEZ VARGAS ANA KAREN GUTIERREZ MUNGUIA LUIS DANIEL TELLEZ ARCOS DIANA FATIMA PROBLEMA A RESOLVER Esta base de datos se va a crear para resolver el problema en una tienda departamental, ya que podemos
Más detallesLENGUAJE DE CONSULTA ESTRUCTURADO (SQL)
Qué es una base de datos? Una base de datos (cuya abreviatura es BD) es una entidad en la cual se pueden almacenar datos de manera estructurada, con la menor redundancia posible. Diferentes programas y
Más detallesStructured Query Language (SQL) Fundamentos de Bases de Datos InCo - 2011
Structured Query Language () Fundamentos de Bases de Datos InCo - Un poco de historia Lenguajes de consulta relacionales: SEQUEL (IBM-1970) QUEL (Ingres-1970) QBE (IBM-1970) es el lenguaje comercial más
Más detallesIntroducción a SQL sobre Oracle
HAC LUCE Universidade da Coruña Departamento de Computación Introducción a SQL sobre Oracle Luis A. González Ares lgares@udc.es Contenido Lenguaje SQL sobre Oracle. Descripción de las características y
Más detallesBases de Datos: Structured Query Language (SQL)
Structured Query Language (SQL): Introducción Bases de Datos: Structured Query Language (SQL) Franco Guidi Polanco Escuela de Ingeniería Industrial Pontificia Universidad Católica de Valparaíso, Chile
Más detalles1. Introducción Tablas de referencia Expresiones 6
ÍNDICE El select de SQL Índice 1. Introducción 1 2. Tipos de Datos 1 2.1. Datos numéricos.................................. 2 2.1.1. Oracle.................................... 2 2.1.2. SQL2....................................
Más detallesÍNDICE INTRODUCCIÓN...17
ÍNDICE INTRODUCCIÓN...17 CAPÍTULO 1. ORACLE 11g Y EL GRID COMPUTING...19 1.1 CONCEPTO DE GRID COMPUTING...19 1.2 ORACLE GRID COMPUTING...20 1.2.1 Almacenamiento eficiente de la información...21 1.2.2 Utilización
Más detallesBases de Datos 2. Teórico
Bases de Datos 2 Teórico Structured Query Language (SQL) Características de SQL Standard Opera sobre conjuntos de tuplas: incluso para las operaciones de inserción, borrado y actualización. No elimina
Más detallesGuía de ejercicios de SQL Prof. Mauricio E. Fernández N. Semestre Agosto-Diciembre de 2012
Guía de ejercicios de SQL Prof. Mauricio E. Fernández N. Semestre Agosto-Diciembre de 2012 Problema Enunciado: Sean las siguientes tablas de una base de datos Empleado (ndiemp, nomemp, sexemp, fecnac,
Más detalles4. Algebra relacional
Tema 7: Modelo Relacional. Dinámica 4. Algebra relacional Operaciones unarias Operaciones de conjuntos Operaciones de combinación Operación de división Operación de agregación y agrupamiento Tema 7: Dinámica
Más detallesÍNDICE PRIMERA PARTE... 17
ÍNDICE PREFACIO... xv PRIMERA PARTE... 17 CAPÍTULO 1. BASES DE DATOS... 19 BASE DE DATOS RELACIONAL... 20 ESTRUCTURA MÍNIMA DE ALMACENAMIENTO... 21 EJEMPLO DE TABLA... 22 RESUMEN... 23 CAPÍTULO 2. CONSULTAS
Más detalles: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127
I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Tercero Requisitos Duración Horas Semana : 06 horas Versión : v.0110 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería
Más detallesBASES DE DATOS SQL MÁS S DE SQL (DML) OPERADOR UNION (L30) <SELECT1> UNION <SELECT2> UNION <SELECTN> Copyright 2006, 2007 Instituto Gala
OPERADOR UNION (L30) UNION UNION OPERADOR INTERSECCION (L31) OPERADOR RELACIONAL INTERSECCION, DEVUELVE REGISTROS CON CAMPOS COMUNES. LAS TABLAS INVOLUCREADAS DEBEN TENER
Más detallesConsultas con combinaciones
UNIDAD 1.- PARTE 2 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Consultas con combinaciones Usando combinaciones (joins), se pueden
Más detallesCurso Querying Microsoft SQL Server 2014 (20461)
Curso Querying Microsoft SQL Server 2014 (20461) Programa de Estudio Curso Querying Microsoft SQL Server 2014 (20461) Aprende las habilidades técnicas necesarias para escribir consultas Transact-SQL básicas
Más detallesSQL. Carlos A. Olarte BDI
Carlos A. Olarte (carlosolarte@puj.edu.co) BDI Outline 1 Introducción 2 Select... from... where 3 Renombramiento 4 Ordenamiento 5 Reuniones 6 Operaciones sobre conjuntos 7 Funciones de Agregación 8 Subconsultas
Más detallesBases de Datos I. Cursada 2008. Clase 4: Álgebra relacional y de bolsas Información ausente Claves BASES DE DATOS I
Bases de Datos I Cursada 2008 Clase 4: Álgebra relacional y de bolsas Información ausente Claves Facultad de Ciencias Exactas Universidad Nac. Centro de la Pcia. de Bs. As. Formalismo para crear nuevas
Más detallesFUNCIONES EN SQL SERVER
FUNCIONES EN SQL SERVER FUNCIONES DE AGREGADO Las funciones de agregado retornan un simple valor, calculado desde el valor en la columna. Funciones de agregados más comunes: AVG() devuelve el valor promedio
Más detallesInteracción con el Servidor Oracle8. Copyright Oracle Corporation, 1998. All rights reserved.
5 Interacción con el Servidor Oracle8 Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al final de esta lección n usted podrá: Escribir correctamente una sentencia SELECT en PL/SQL Declarar
Más detallesBase de Datos. Docente: Ing. Francisco Rodríguez BASE DATOS. Resultados. Internet. Requerimientos
UNIVERSIDAD NACIONAL DE TRUJILLO ESCUELA DE ING. INDUSTRIAL Base de Datos Resultados Internet Requerimientos BASE DATOS Docente: Ing. Francisco Rodríguez Base de Datos Tema 6: El Lenguaje Estándar SQL
Más detalles8 SQL SERVER 2008 RA-MA
ÍNDICE Capítulo 1. Características, novedades y entorno de trabajo... 17 1.1 Novedades en SQL Server 2008... 17 1.2 Instalación de Microsoft SQL Server 2008... 19 1.3 Versiones de Microsoft SQL Server
Más detallesSQL Server 2000. FEMEPA SQL Server 2000
FEMEPA Partes del SQL El lenguaje SQL está compuesto de varios sub-lenguajes, entre los cuales destacan los tres siguientes: DML. Lenguaje de definición de datos. Todas las sentencias de manipulación de
Más detallesSer capaces de realizar una consulta dentro de otra
TEMA 25: SUBCONSULTAS OBJETIVOS Ser capaces de realizar una consulta dentro de otra 1.- SUBCONSULTAS A veces interesa obtener dentro de una selección de datos, otra, esto se conoce como subconsulta. La
Más detalles8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA
ÍNDICE CAPÍTULO 1. CARACTERÍSTICAS, NOVEDADES Y ENTORNO DE TRABAJO...17 1.1 NOVEDADES EN SQL SERVER 2008 R2...17 1.2 INSTALACIÓN DE MICROSOFT SQL SERVER 2008 R2...18 1.3 VERSIONES DE MICROSOFT SQL SERVER
Más detalles6- Combinación de tablas
Objetivos: 6- Combinación de tablas Utiliza sentencias para unir los datos de diferentes tablas. Recursos: Microsoft SQL Server Management Studio Guías prácticas. Script de bases de datos. Introducción
Más detallesTemario. Índices simples Árboles B Hashing
Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases
Más detallesTema 7. Elaboración de consultas básicas de selección. Lenguajes de bases de datos. SQL básico 15/12/2011
Lenguajes de bases de datos Tema 7 Elaboración de consultas básicas de selección En esta unidad se abordan cuestiones que, aunque están definidas por el estándar ANSI/ISO SQL, no están asumidas al 100%
Más detallesSql Basico. Seminar Introduction
Sql Basico Seminar Introduction SQL Basico Sobre el modelo anterior de datos haremos un repaso de las consultas sql mas comunes. Devolver todos los datos de una tabla sin filtrar. Select campo_1, campo_2,
Más detallesIng. Santiago C. Pérez Laura Noussan Lettry Carlos Campos
UNIVERSIDAD TECNOLÓGICA NACIONAL FACULTAD REGIONAL MENDOZA DEPARTAMENTO DE INGENIERÍA EN SISTEMAS DE INFORMACIÓN CÁTEDRA DE GESTIÓN DE DATOS 3º AÑO TRABAJO ESPECIAL Secuencia Didáctica de Comandos del
Más detallesCONSULTAS MULTITABLAS SQL SERVER 2005. Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE
CONSULTAS MULTITABLAS SQL SERVER 2005 Manual de Referencia para usuarios Salomón Ccance CCANCE WEBSITE CONSULTAS MULTITABLAS Hasta ahora hemos visto consultas que obtienen los datos de una sola tabla,
Más detallesCapítulo 3: Álgebra Relacional
Capítulo 3: Álgebra Relacional Dr. José Torres Jiménez Laboratorio de Tecnologías de Información Centro de Investigación y de Estudios Avanzados del IPN Cinvestav-Tamaulipas Dr. José Torres Jiménez (Cinvestav-LTI)
Más detallesÍNDICE INTRODUCCIÓN...13
ÍNDICE INTRODUCCIÓN...13 CAPÍTULO 1. EL MODELO RELACIONAL. LENGUAJE SQL...17 1.1 INTRODUCCIÓN AL MODELO RELACIONAL...17 1.2 RELACIONES...19 1.2.1 Definición formal de relación...21 1.2.2 Propiedades y
Más detallesProcedimientos almacenados en PL/SQL. Jonathan Medina Gómez Facultad de Ingeniería Universidad de Antioquia
Procedimientos almacenados en PL/SQL Jonathan Medina Gómez Facultad de Ingeniería Universidad de Antioquia Ventajas... Los bloques se pueden almacenar en forma permanente mediante subprogramas (funciones
Más detallesTaller de Introducción a R 2. Manipulación de datos
Taller de Introducción a R 2. Manipulación de datos Ricardo Alvarado Rodolfo Mora Ricardo Román ralvarado@cenat.ac.cr rmora@cenat.ac.cr rroman@cenat.ac.cr Noviembre, 2015 Contenido 1 Estructuras de datos
Más detallesConceptos Avanzados de Programación en Internet
Página 1 Conceptos Avanzados de Programación en Internet (1) Introducción a las Bases de Datos (2) Lenguaje Estándar de Consultas SQL Página 2 Lenguaje SQL. Introducción BD Justificación de las Bases de
Más detallesUNIDAD 8. Lenguaje SQL (Structured Query Language)
1 UNIDAD 8 Lenguaje SQL (Structured Query Language) Introducción 2 Características del lenguaje SQL constituye un factor fundamental en el éxito de las bases de datos relacionales Es un lenguaje declarativo(no
Más detalles1.264 Tema 7. Introducción a SQL
1.264 Tema 7 Introducción a SQL Lenguaje de consulta estructurado (SQL) Tema 7: SELECT, INSERT, DELETE y UPDATE. Relaciones. Tema 8: Subconsultas. Vistas (tablas virtuales). Indexados. Transacciones. Seguridad.
Más detallesBases de Datos SQL 1 SQL. Jorge Pérez R. Universidad de Talca, II Semestre 2006
Bases de Datos SQL 1 SQL Jorge Pérez R. Universidad de Talca, II Semestre 2006 Bases de Datos SQL 2 Structured Query Language Lenguaje de consulta para bases de datos comerciales. Originalmente llamado
Más detallesManipulación de datos en SQL
Manipulación de datos en SQL Consultas a una sola tabla Consultas a varias tablas Funciones agregadas Agrupación Consultas anidadas Ejemplo: esquema relacional EMPLEADO (num_emp, nombre, tarifa_hora, cualificacion,
Más detallesEL LENGUAJE DE BASES DE DATOS SQL (DDL, DML, TRIGGERS Y STORE PROCEDURES)
EL LENGUAJE DE BASES DE DATOS SQL (DDL, DML, TRIGGERS Y STORE PROCEDURES) Por qué son importantes las Bases de Datos? Las Bases de Datos son el método preferido para el almacenamiento estructurado de datos.
Más detallesSERVICIO NACIONAL DE APRENDIZAJE SENA
SERVICIO NACIONAL DE APRENDIZAJE SENA GUÍA DE APRENDIZAJE SISTEMA INTEGRADO DE GESTIÓN Proceso Gestión de la Formación Profesional Integral Procedimiento Ejecución de la Formación Profesional Integral
Más detallesBase de datos I Facultad de Ingeniería. Escuela de computación.
Base de datos I Facultad de Ingeniería. Escuela de computación. Introducción Este manual ha sido elaborado para orientar al estudiante de Bases de datos I en el desarrollo de sus prácticas de laboratorios,
Más detallesBASES DE DATOS TEMA 4. SQL. UN LENGUAJE DE CONSULTA COMERCIAL PARA BASES DE DATOS RELACIONALES Contenidos generales
BASES DE DATOS TEMA 4. SQL. UN LENGUAJE DE CONSULTA COMERCIAL PARA BASES DE DATOS RELACIONALES Contenidos generales * Definición de datos en SQL * Consulta de datos en SQL - Estructura básica de una sentencia
Más detallesEl Lenguaje SQL TEMA V. Grupo de Bas ses de Datos Avanzadas Univ. Carlo os III de Madrid. V.1 SQL como Lenguaje de Definición de Datos
Grupo de Bases de Datos Avanzadas Univ. Carlos III de Madrid Índice V.1 Introducción V.1 SQL como Lenguaje de V.1.1 Definición del esquema V.1.2 Evolución del esquema V.2 SQL como Lenguaje de Manipulación
Más detallesAccess SQL: DDL y DML. Una empresa de Ingeniería precisa una base de datos para la gestión de sus proyectos.
SGBD y SQL Access SQL: DDL y DML Ejercicio Una empresa de Ingeniería precisa una base de datos para la gestión de sus proyectos. Necesita almacenar información acerca de sus empleados y los proyectos en
Más detallesDML SQL II. Comparaciones con relaciones
DML SQL II Comparaciones con relaciones Subconsultascopiar Hasta ahora las condiciones en WHERE involucraban valores escalares Pero, como en el caso de Julie Andrews puede que aparezca SELECT como parte
Más detallesS.Q.L. (Lenguaje de Consulta Estructurada)
S.Q.L. (Lenguaje de Consulta Estructurada) S.Q.L. - Consultas SQL tiene una instrucción básica para obtener información de una base de datos: la instrucción SELECT (seleccionar). Básicamente la instrucción
Más detallesTemario. Índices simples Árboles B Hashing
Temario Introducción y fundamentos Introducción a SQL Modelo Entidad / Relación Modelo relacional Diseño relacional: formas normales Consultas Cálculo relacional Álgebra relacional Implementación de bases
Más detallesConceptos Avanzados de Cursores Explícitos. Copyright Oracle Corporation, 1998. All rights reserved.
9 Conceptos Avanzados de Cursores Explícitos Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al final de esta lección n podrá: Escribir un cursor que utilice parámetros Determinar cuándo
Más detallesÁlvaro Herrera alvherre@dcc.uchile.cl Modelamiento Avanzado de Datos con PostgreSQL
Modelamiento Avanzado de Datos con PostgreSQL Álvaro Herrera alvherre@dcc.uchile.cl Quinto Encuentro Nacional de Linux, Chile Contenidos Restricciones Check OUTER JOIN Operaciones de Conjuntos Agrupamiento
Más detallesLENGUAJE DE MANIPULACIÓN DE DATOS (DML) OPERADORES DE ÁLGEBRA RELACIONAL
PREVIO 6 LENGUAJE DE MANIPULACIÓN DE DATOS (DML) OPERADORES DE ÁLGEBRA RELACIONAL INTRODUCCIÓN La manera en que los usuarios solicitan información de la base de datos es a través del lenguaje de consultas,
Más detallesSQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de SQL Datos (DML)
SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de Datos Outline 1 Actualización, Inserción y Modificación 2 Consultas (Queries) 3 Renombramiento 4 Ordenamiento 5 Reuniones 6
Más detallesTema 4. SQL. Juan Ignacio Rodríguez de León
Tema 4. SQL Juan Ignacio Rodríguez de León Resumen Este tema se centra exclusivamente en el estudio del lenguaje de consultas SQL (Structured Query Language). SQL usa una combinación de álgebra relacional
Más detallesÍNDICE. Introducción... Capítulo 1. Novedades de Access 2013... 1
Introducción... XIII Capítulo 1. Novedades de Access 2013... 1 Nuevas posibilidades de cifrado, compactación y reparación de archivos... 1 Trabajo en la nube... 2 Compartir la información... 3 Guardar
Más detallesModulo I: Introducción Gestores de Bases De Datos
Modulo I: Introducción Gestores de Bases De Datos El SQL El SQL (Lenguaje de Consulta Estructurado Structure Query Language), es un lenguaje de consulta estructurado establecido claramente como el lenguaje
Más detallesDISPARADORES EN SQL DISPARADORES EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999 SINTAXIS GENERAL DE UN DISPARADOR EN SQL:1999
DISPARADORES EN SQL:1999 DISPARADORES EN SQL Modelos Avanzados de Bases de Datos Un (trigger) es un procedimiento especial que se ejecuta en respuesta a un evento específico. Ej. Al aumentar el sueldo
Más detallesSistemas de Datos Curso: Ernesto Chinkes. SQL Básico Algebra Relacional
SQL Básico Algebra Relacional Modelo Relacional Conceptos Relación Esquema Operaciones del Algebra Relacional Selección Proyección Unión Diferencia Producto Cartesiano Algebra Relacional Selección (σ)
Más detallesselect nombre from profesores where categoria='aso6';
1 de 10 17/05/2013 14:00 Lecciones SQL > T11 Conjuntos Operaciones de conjuntos y MySQL Un operador sobre conjuntos combina el resultado de dos sentencias select en un único resultado. Dependiendo del
Más detallesXQuery. Un lenguaje de consulta para XML.
XQuery. Un lenguaje de consulta para XML. Nieves Carralero Colmenar. IES Pedro Mercedes. Junta de Comunidades de Castilla-La Mancha. España. Resumen En este artículo se muestra una introducción práctica
Más detallesLENGUAJE SQL. En Mysql se utiliza un subconjunto de SQL (update, insert into, delete, select, truncate,etc).
LENGUAJE SQL Un manejador de base de datos debe de contener lenguajes que permitan definir el modelos de los datos, este mismo es que permite crear la estructura de la base de datos. Lenguaje de Definicion
Más detallesUNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales
UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Práctica preliminar Crear la siguiente base de datos de prácticas
Más detallesOPTIMIZADOR ORACLE. 1. La meta: escoger el modo más eficiente de ejecutar una declaración S.Q.L. FILTER 2 NESTED LOOPS
1 OPTIMIZADOR ORACLE. 1. La meta: escoger el modo más eficiente de ejecutar una declaración S.Q.L. Ejemplo : SELECT ename,job, sal, dname FROM emp,dept WHERE emp.deptno = dept.deptno AND NOT EXISTS ( SELECT
Más detalles