Estadística Computacional I

Slides:



Advertisements
Presentaciones similares
IBD Clase 14.
Advertisements

Procesamiento de Datos
DATSI, FI, UPM José M. Peña Programación en C DATSI, FI, UPM José M. Peña Programación en C.
INTELIGENCIA ARTIFICIAL
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.
Integridad de Las Bases de Datos
SQL Sigla del nombre “Structured Query Language”.
integridad referencial
Rocio Contreras Aguila Primer Semestre Para poder ejecutar esto SQL Server nos permite definir datos y nos entrega herramientas para poder exigir.
LENGUAJE ESTRUCTURADO DE CONSULTA “SQL”
BASE DE DATOS OBJETO RELACIONAL
Unidad 1: Funciones, Límite y Continuidad
Estadística Administrativa I
UPC Tema: ESPACIO VECTORIAL Rn
Fernando Velasco
Teórico: Modelo Relacional
Sistemas de Ecuaciones
TEORÍA DE CONJUNTOS.
UNIDAD 2: FUNCIONES.
U NIDAD 2 L ENGUAJE DE DEFINICIÓN DE DATOS (DDL) 1.
Mejoras a la Cláusula GROUP BY
INTELIGENCIA ARTIFICIAL
Estadística Computacional I
Estadística Computacional I
La minimización de los costes
Maestría en Bioinformática Bases de Datos y Sistemas de Información Fundamentos de Matemática Ing. Alfonso Vicente, PMP
Fundamentos de Lógica Difusa (Fuzzy)
Expresiones Algebraicas
¿Qué es un conjunto? Un conjunto es una colección de objetos considerada como un todo. Los objetos de un conjunto son llamados elementos o miembros del.
Sistema de gestión de las bases de datos (SGBD).
Números enteros.
Unidad 3 Lenguaje SQL Contenidos Que es SQL ? Estructura de SQL
Lenguaje Estructurado de Consultas (Structured Query Language – SQL)
La transformada de Laplace
E.1 Obtener los detalles completos de todos los proyectos.
Tipos de datos y campos.
SESIÓN 2. Completados por el tipo de objeto sobre el que actúan y el objeto concreto: CREATE DATABASE mibase ; Permite crear una base de datos llamada.
SQL Structured Query Language
SQL el Structured Query Language no es mas que un lenguaje estándar de comunicación con bases de datos.
Facultad de Tecnología Informática
Componentes sintácticos
Clase 10: Estructuras de datos y arreglos.
John Freddy Duitama M.U.de.A. Facultad de Ingeniería. Creación del esquema de Una Base de Datos. John Freddy Duitama Muñoz. Facultad de Ingeniería. U.de.A.
COMANDOS SQL.
SQL Informática aplicada.
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:
IBD CLASE 15. SQL Lenguaje de Consultas Estruturado (SQL) ◦Lenguaje de trabajo estándard para modelo relacional ◦Componentes ◦DDL: Data Definition Language.
Algebra Relacional Ing. Fabián Ruano.
ESCUELA TECNOLÓGICA INSTITUTO TÉCNICO CENTRAL Ing. Johanna Vargas Esp. Gerencia de proyectos.
CONSULTAS SENCILLAS A LA BASE DE DATOS
Tema 2: Base de datos relacionales
Bases de Datos Sql.
BASES DE DATOS MySQL.
SQL: DDL Francisco Moreno. SQL: DDL DDL: Lenguaje de Definición de Datos Permite crear objetos en la BD Tipos de objetos: - Tablas: corresponden a las.
SQL Sigla del nombre “Structured Query Language”.
BASES DE DATOS MySQL. BASE DE DATOS Estructuras o contenedores donde se almacena información siguiendo determinadas pautas de disposición y ordenación.
Ing. Eddye Sánchez Castillo FACULTAD DE INGENIERIA Escuela Profesional de Computación y Sistemas BASE DE DATOS I.
Bases de Datos Modelo Relacional.
JOIN EN MYSQL Bueno en esta presentación mostrare cosas acerca de los usos de la sentencia JOIN en mysql , mediante esta presentación planeo mostrar los.
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.
(Lenguaje de consulta estructurado)
Base de Datos Conjunto de tablas organizadas y posiblemente relacionados entre si. Las tablas son las que almacenan la información.
SQL Lenguaje Estructurado de Consultas. Structured Query Lenguaje (SQL). Lenguaje de acceso a bases de datos. Proyecto de Investigación de IBM. La mayoria.
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.
Unidad 6. Tema 4. Lenguaje de consultas SQL
Departamento de Lenguajes y Sistemas Informáticos escuela técnica superior de ingeniería informática Diseño de Bases de Datos Tema 4: Integridad.
SQL: DDL.
Bases de datos II Universidad del Cauca Ing. Wilson Ortega.
Administrador de Bases de Datos.  Características:  Libre.- puede descargarse de forma gratuita  Facilidad de uso.- gracias a aplicaciones como phpMyAdmin.
Transcripción de la presentación:

Estadística Computacional I Maestría en Estadística Aplicada

Otras operaciones del álgebra relacional extendida Proyección generalizada Funciones de agregación Unión externa ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Proyección Generalizada Extiende la operación proyección permitiendo que se usen funciones aritméticas en la lista de proyección. E es cualquier expresión del álgebra relacional Cada una de las F1, F2, …, Fn son expresiones aritméticas que involucran constantes y atributos en el esquema de E. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Ejemplo de proyección generalizada Dada la relación info_crédito(nombre_cliente, límite, saldo_crédito), encuentre cuánto más puede gastar una pesona: nombre_cliente, límite – saldo_crédito (info_crédito) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Funciones de agregación y operaciones Una función de agregación toma una coleción de valores y retorna un único valor como resultado. avg: valor del promedio min: valor mínimo max: valor máximo sum: suma de valores count: número de valores Operación de agregación en el álgebra relacional E es cualquier expresión del álgebra relacional G1, G2 …, Gn es una lista de atributos que se desea agrupar (puede ser vacía) Cada Fi es una función de agregación Cada Ai es un nombre de atributo ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Ejemplo de operación de agregación Relación r: A B C     7 3 10 g sum(c) (r) sum(c ) 27 ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Otro ejemplo de operación de agregación Relación cuenta agrupada por sucursal: nombre_sucursal g sum(saldo) (cuenta) El resultado de agregación no tiene un nombre, se puede utilizar renombramiento para asignarle un nombre. Por facilidad, se permite renombrar como parte de la operación de agregación de la siguiente manera Nombre_sucursal gsum(saldo) as sum_saldo (cuenta) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Unión externa Se define como una extensión de la operación unión que evita la pérdida de información. Calcula la unión y luego añade tuplas de la una relación que no coinciden con las tuplas en la otra relación como resultdo de la unión. Usa valors null : null significa que el valor es desconocido o no existe Todas las comparaciones que involucran null son por definición falsas. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Ejemplo de unión externa Asuma que la relación préstamo es de la siguiente forma 3000 4000 1700 número_préstamo importe L-170 L-230 L-260 nombre_sucursal Downtown Redwood Perryridge Relación prestatario nombre_cliente número_préstamo Jones Smith Hayes L-170 L-230 L-155 ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Ejemplo de unión externa Unión loan borrower número_préstamo importe L-170 L-230 3000 4000 nombre_cliente Jones Smith nombre_sucursal Downtown Redwood Unión externa por la izquierda prestamo prestatario Jones Smith null número_préstamo importe L-170 L-230 L-260 3000 4000 1700 nombre_cliente nombre_sucursal Downtown Redwood Perryridge ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Ejemplo de unión externa Unión externa por la derecha prestamo prestatario número_préstamo importe L-170 L-230 L-155 3000 4000 null nombre_cliente Jones Smith Hayes nombre_sucursal Downtown Redwood número_préstamo importe L-170 L-230 L-260 L-155 3000 4000 1700 null nombre_cliente Jones Smith Hayes nombre_sucursal Downtown Redwood Perryridge ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Modificación de la base de datos El contenido de la base de datos puede ser modificado utilizando las siguientes operaciones: Borrado Inserción Actualización Todas estas operaciones usan el operador de asignación. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Borrado Una petición de borrado se expresa de manera similar a una consulta, excepto que en lugar de desplegar las tuplas al usuario, las tuplas seleccionadas se remueven de la base de datos. Se puede únicamente borrar tuplas enteras; no se puede borrar atributos particulares El borrado se expresa en álgebra relacional por : r  r – E donde r es una relación y E es una consulta del álgebra relacional. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Ejemplo borrado Borrar todas las cuentas en la sucursal Galapagar. cuenta  cuenta – nombre_sucursal = “Galapagar” (cuenta ) Borrar todos los registros de prestamo con importeen el rango de 0 to 50 prestamo  prestamo – importe 0y importe  50 (prestamo) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Inserción Para insertar data en una relación, se debe realizar uno de los siguientes pasos: Especificar la tupla a ser insertada Escribir una consulta cuyo resultado sea un conjunto de tuplas a ser insertadas En el álgebra relacional, una insersión se expresa mediante: r  r  E donde r es una relación y E es una expresión del álgebra relacional. La inserción de una sola tupla se expresa haciendo que E sea una relación constante que contiene una sola tupla. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Inserción Inserte información en la base de datos especificando que Smith tiene $1200 en la cuenta A-973 en la sucursal Galapagar. cuenta  cuenta  {(“A-973”, “Galapagar”, 1200)} impositor  impositor  {(“Smith”, “A-973”)} Proporcione un regalo para todos los clientes con préstamos en la sucursal Galapagar, una cuenta con $200 . Sea el número de préstamo el número de cuenta para las nuevas cuentas. r1  (nombre_sucursal = “Galapagar” (borrower loan)) cuenta  cuenta  número_prestamo, nombre_sucursal, 200 (r1) impositor  impositor  nombre_cliente,número_prestamo (r1) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Actualización Es un mecanismo para cambiar un valor en una tupla sin cambiar todos los valores de la tuplaç Utiliza el operador de proyección generalizada Cada Fi representa uno de los siguientes El I –ésimo atributo de r, si el I-ésimo atributo no va a ser actualizado o, Si el atributo va a ser actualizado Fi es una expresión que involucra únicamente constantes y atributos de r, los cuales proporcionan el nuevo valor para el atributo. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Ejemplo de actualización Pagar intereses mediante el incremento de los saldos en el 5%. cuenta   número_cuenta, nombre_sucursal, saldo * 1.05 (cuenta) Pagar a todas las cuentas con saldos sobre $10,000 6% de interés y pagar a todas las demás 5 % account   número _cuenta, nombre_sucursal, saldo * 1.06 ( SALDO  10000 (cuenta ))   número_cuenta, nombre_sucursal, saldo * 1.05 (SALDO  10000 (cuenta)) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

SQL: Lenguaje de consulta estructurado Aunque el lenguaje SQL se considere un lenguaje de consultas, contiene muchas otras capacidades además de la consulta en bases de datos. Incluye características para definir la estructura de los datos, para la modificación de los datos en la base de datos y para la especificación de restricciones de seguridad. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Lenguaje de definición de datos LDD Permite la especificación de un conjunto de relaciones y también informción acerca de cada relación que incluye El esquema para cada relación. El dominio de valores asociados con cada atributo. Restricciones de integridad El conjunto de índices que se deben mantener en cada relación. Seguridad e información de autorización para cada relalción. La estructura física de almacenamiento de cada relación en el disco. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Tipos de dominios en SQL char(n). Cadena de caracteres de longitud fija n. varchar(n). Cadena de caracteres de longitud variable, con máxima longitud de n. int. entero (un subconjunto finito de los enteros, que es dependiente de la máquina). smallint. es un entero pequeño (un subconjunto del dominio de los enteros, también dependiente de la máquina). numeric(p,d). es un número en coma flotante, cuya precisión la especifica el usuario. El número está formado por p dígitos (más el signo), y de esos p dígitos, d pertenecen a la parte decimal. Así, numeric (3,1) permite que el número 44,5 se almacene exactamente, mientras que los números 444,5 y 0,32 no se pueden almacenar exactamente en un campo de este tipo. real, double precision. son respectivamente números en coma flotante y números en coma flotante de doble precisión, con precisión dependiente de la máquina. float(n). es un número en coma flotante, cuya precisión es de al menos n dígitos. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Tipos de dominios en SQL time es la hora del día, expresada en horas, minutos y segundos. Se puede usar una variante time(p), para especificar el número de dígitos decimales para los segundos (el número predeterminado es 0). También es posible almacenar la información del uso horario junto al tiempo. timestamp es una combinación de date y time. Se puede usar una variante, timestamp(p), para especificar el número de dígitos decimales para los segundos (el número predeterminado es 6) date ‘2008-12-13’ time ‘10:10:00’ timestamp ‘2008-12-13 10:10:01.45’ ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Creación de una tabla Una relación en SQL se define usando el comando de crear tabla: create table r (A1 D1, A2 D2, ..., An Dn, (restricción de integridad1), ..., (restricción de integridadk)) r es el nombre de la relación cada Ai es el nombre de un atributo en el esquema de la relación r Di es el tipo de dato de los valores en el dominio del atributo Ai Example: create table sucursal (nombre_sucursal char(15) not null, ciudad_sucursal char(30), activos integer) ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Restricciones de integridad en crear tabla primary key (Aj1, Aj2,…, Ajm): la especificación de clave primaria dice que los atributos Aj1, Aj2,…, Ajm forman la clave primaria de la relación. Los atributos clave primaria deben ser no nulos y únicos; Aunque la especificación de clave primaria es opcional, es generalmente buena idea especificar una clave primaria para cada relación. check (P): la cláusula check especifica un predicado P que debe satisfacer cada tupla de la relación. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Ejemplo ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Otro ejemplo ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Otras restricciones de integridad De manera predeterminada, null es un valor válido para cualquier atributo en SQL, a menos que se especifique con not null. SQL también soporta una restricción de integridad La especificación unique indica que los atributos Aj1, Aj2,…, Ajm forman una clave candidata; es decir, no puede haber dos tuplas en la relación con todos los atributos que forman la clave candidata iguales. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Construcciones drop table y alter table El comando drop table borra toda la información acerca de la relación elegida dentro de la base de datos. El comando alter table se usa para añadir atributos a una realción existente: alter table r add A D donde A es el nombre del atributo que se desea añadir a la relación r y D es el dominio de A. Todas las tuplas en la relación reciben la asignación de null como el valor para el nuevo atributo. El comando alter table puede también ser utilizado para eliminar atributos de una relación: alter table r drop A donde A es el nombre del atributo de la relación r ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

Estructura básica de consultas SQL se basa en operaciones de conjunto y relacionales con ciertas modificaciones y mejoras. Una consulta típica de SQL tiene la forma: select A1, A2, ..., An from r1, r2, ..., rm where P Ai representa un atributo Ri representa una relación P es un predicado. Esta consulta es equivalente a la expresión del álgebra relacional. El resultado de una consulta SQL es una relación. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Select El comando select enlista los atributos deseados en el resultado de la consulta Corresponde a la operación de proyección en el álgebra relacional Example: Encuentre los nombres de todas las sucursales en la relación prestamo: select nombre_sucursal from prestamo En álgebra relacional la consulta sería: nombre_sucursal (prestamo) NOTA: los nombres en SQL son case insensitive (esto es., se pueden usar mayúculas o minúsculas.) Ejemplo: nombre_sucursal ≡ NOMBRE_SUCURSAL ≡ Nombre_Sucursal ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Select SQL permite duplikcdos en las relaciones así también como en los resultados de las consultas. Par forzar la eliminación de duplicados se debe insertar el comando distinct luego de select. Encontrar los nombres de todas las sucursales en la relación prestamo, y remover los duplicados select distinct nombre_sucursal from prestamo El comando all especifica que los duplicados no deben ser removidos. select all nombre_sucursal from prestamo ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Select Un asterisco en la cláusula select denota “todos los atributos” select * from prestamo El comando select puede contener expresiones aritméticas que involucren operaciones tales como +, –, , y /, y operar en constantes o atributos de tuplas. La consulta: select numero_prestamo, nombre_surucsal, importe  100 from prestamo retorna una relación que es la misma que prestamo, excepto que el valor del atributo importe está multiplicado por 100. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Where El comando where especifica las condiciones que el resultado debe satisfacer Corresponde a la selección de predicados en el álgebra relacional Por ejemplo para encontrar todos los números de préstamos para préstamos realizados en la sucursal Galapagar con importes mayores a 1200 se tiene select numero_prestamo from prestamo where nombre_sucursal= ‘Galapagar' and importe > 1200 Los resultados de comparación pueden ser combinados mediante el uso de las conectivas lógicas and, or, y not. Las comparaciones se pueden aplicar a resultados de expresiones aritméticas. ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez Where SQL incluye un operador de comparación: between Ejemplo: Encuentre el número de préstamo de aquelos préstamos con montos entre $90,000 and $100,000 (esto es, mayores que $90,000 y menores que $100,000) select numero_prestamo from prestamo where importe between 90000 and 100000 ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez

ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez From El comando from enlista las relaciones involucradas en la consulta Corresponde al producto cartesiano en el álgebra relacional. Encontrar el producto cartesiano entre prestatario X prestamo select  from prestatario, prestamo Encuentre el nombre, número de préstamo e importe de todos los clientes que tienen un préstamo en la sucursal Galapagar. select nombre_cliente, prestatario.numero_prestamo, importe from prestatario, prestamo where prestatario.numero_prestamo = prestamo.numero_prestamo and nombre_sucursal= ‘Galapagar' ESCUELA POLITÉCNICA NACIONAL Dra. Sandra E. Gutiérrez