3ra. Parte. Bases de Datos Relacionales



Documentos relacionados
Bases de Datos Relacionales

Tipo de Dato TRANSACT SQL

SQL Server FEMEPA SQL Server 2000

CONSULTAS CON SQL. 3. Hacer clic sobre el botón Nuevo de la ventana de la base de datos. Aparecerá el siguiente cuadro de diálogo.

MANUAL BÁSICO DEL LENGUAJE SQL

SQL. Lenguaje de Consulta Estructurado. Curso básico de SQL (Leire Urcola Carrera)

Procedimientos para agrupar y resumir datos

Universidad Capitán General Gerardo Barrios. Facultad de Ciencia y Tecnología

Unidad III: Lenguaje de manipulación de datos (DML) 3.1 Inserción, eliminación y modificación de registros

LAS SUBCONSULTAS SQL SERVER Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Práctica A: Procedimientos para agrupar y resumir datos

UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales

SENTENCIAS Y CONSULTAS EN SQL SERVER

Consultas con combinaciones

SINTAXIS DE SQL-92. <definición de esquema >::= CREATE SCHEMA <cláusula de nombre de esquema> [ <elemento de esquema>... ]

1. DML. Las subconsultas

SQL (DML) Carlos A. Olarte Gestión y Modelación de SQL Datos (DML)

ÍNDICE. Introducción... Capítulo 1. Novedades de Access

Tema: USO DE COMBINACIONES EXTERNAS.

m046a Curso Consultando SQL Server 2005/2008 con Transact-SQL, 15 h

8 SQL SERVER 2008 RA-MA

UNION, INTERSECCION Y DIFERENCIA. SELECT TABLE Expresión con operador de reunión (SELECT * FROM PROFESOR) UNION (SELECT * FROM ESTUDIANTE)

8 MICROSOFT SQL SERVER 2008 R2. CURSO PRÁCTICO RA-MA

CONSULTAS DE RESUMEN SQL SERVER Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

SQL (Structured Query Language)

Práctica A: Trabajo con subconsultas

Bases de Datos 2. Teórico

Tema: SUBCONSULTAS Y CREACION DE VISTAS.

Sql Basico. Seminar Introduction

Bases de Datos SQL - Ejemplos

Tema: Uso de sentencias SQL

Diseño e Implementación de Bases de Datos

Crear BD en. Isis Bonet Cruz, PhD

Lenguaje de Consulta Estructurado S Q. Lenguaje de Consulta Estructurado. Wael Najjar /

CONSULTAS MULTITABLAS SQL SERVER Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

Sistemas de Datos Curso: Ernesto Chinkes. Subconsultas Stored Procedures - Triggers

Entrarás a formar parte de nuestra bolsa de empleo a la que acuden las empresas en busca de nuestros alumnos.

Base de Datos Avanzado I

A.1. Definiciones de datos en SQL

: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127

El lenguaje SQL es un lenguaje estándar para el acceso y

Datos Agregados por medio de Funciones de Grupo. Copyright Oracle Corporation, All rights reserved.

Universidad Capitán General Gerardo Barrios. Facultad de Ciencia y Tecnología

Structured Query Language (SQL) Fundamentos de Bases de Datos InCo

Unidad. Lenguaje SQL. (Structured Query Language)

SQL SERVER SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server.

RESUMEN SQL. Tipo de coincidencia Modelo Planteado Coincide No coincide. Varios caracteres 'ab*' 'abcdefg', 'abc' 'cab', 'aab'

5- Uso de sentencias avanzadas

6- Combinación de tablas

Primeramente estudiaremos la forma básica de la sentencia SELECT, que esta formado por:

SQL SERVER Curso Teórico-Práctico

Taller SQL - SUP. Introducción al Lenguaje SQL. Claúsula Where. Sentencia Select Sentencia Insert Sentencia Update Sentencia Delete

LENGUAJE DE CONSULTA ESTRUCTURADO - SQL CONTENIDO

TEMA 10. INTRODUCCCIÓN A SQL. CONSULTAS BASADAS EN UNA TABLA

ÍNDICE PRIMERA PARTE... 17

Trabajo con Subconsultas

BASES DE DATOS I CONSULTA DE DATOS

Dependiendo de las tareas, podemos clasificar las sentencias SQL en dos tipos:

Tutorial de SQL - El comando SELECT

CONSULTAS BASICAS EN SQL SERVER

Base de Datos Oracle 10g: Introducción a SQL Código: D Duración: 5 días (40 horas)

Curso SQL Nivel Avanzado 1. Miguel Jurado García

Sistemas de Bases de Datos II

Tema: Combinación de tablas

CONSULTAS SIMPLES SQL SERVER Manual de Referencia para usuarios. Salomón Ccance CCANCE WEBSITE

CURSO DE SQL SERVER 2005

1.264 Tema 7. Introducción a SQL

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLOGICOS ESCUELA DE COMPUTACION

Base de datos I Facultad de Ingeniería. Escuela de computación.

Tema 4. SQL. Juan Ignacio Rodríguez de León

El 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

Bases de Datos Relacionales

m046a Curso Consultando SQL Server 2005/2008 con Transact-SQL, 15 h

SQL DML Select. Ges$ón y Modelación de Datos. María Constanza Pabón

SQL (Structured Query Language)- DML

Programación en SQL con PostgreSQL

PROGRAMAS DE ESTUDIO FORMATO 7 INTRODUCCIÓN A SQL. Área de Formación Profesional

Grupo Kybele, Pág. 1

Implementación de funciones definidas por el usuario

UNIVERSIDAD DON BOSCO FACULTAD DE ESTUDIOS TECNOLOGICOS ESCUELA DE COMPUTACION

Base de datos Lenguaje SQL

TUTORIAL OPERADOR CUBE

OPTIMIZACIÓN DE CONSULTAS EN SQL. Análisis de Consultas y Transacciones Ajuste de Indices Ajuste de Consultas

Álvaro Herrera Modelamiento Avanzado de Datos con PostgreSQL

Restricciones de Integridad

ESCUELA PROFESIONAL DE INGENIERÍA DE SISTEMAS E INFORMÁTICA

UNIVERSIDAD AUTONOMA DE LOS ANDES UNIANDES LENGUAJE SQL. SQL es un estándar un lenguaje estructurado para consultas

Práctica 3. Consultas SQL

Sub consultas avanzadas

Boletín de Problemas de la Asignatura II18 Bases de Datos. Ingeniería Informática Universitat Jaume I

BASES DE DATOS TEMA 4. SQL. UN LENGUAJE DE CONSULTA COMERCIAL PARA BASES DE DATOS RELACIONALES Contenidos generales

ÍNDICE INTRODUCCIÓN...13

Bases de datos: Sistemas de bases de datos:

Tema 4. Manipulación de datos con SQL

DML en SQL. Consultas sencillas usando el DML de SQL

BREVE INTRODUCCIÓN AL SQL Aplicación al Programa Escuela Última actualización: 17/10/2000

Práctica Obtener el código y el doble del precio de los artículos cuyo precio es inferior a 5 céntimos de euro.

Transcripción:

3ra. Parte Bases de Datos Relacionales

Lenguaje de consulta SQL Proyección Tabla 1 Selección Tabla 1 Tabla 1 Tabla 2 Unión

Lenguaje SQL SELECT SELECT [TOP expresión [PERCENT] [ WITH TIES ] ] <lista seleccionada> [ INTO nueva_tabla ] [ FROM tabla ] [ WHERE condición ] [ GROUP BY expresión ] [ HAVING condición ] [ ORDER BY expresión [ ASC DESC ] ] Join CROSS INNER OUTER (LEFT, RIGHT, FULL)

Clausula WHERE La cláusula WHERE puede usarse para determinar qué registros de las tablas enumeradas en la cláusula FROM aparecerán en los resultados de la instrucción SELECT [ WHERE <condición> ] SELECT [TOP expresión [PERCENT] [ WITH TIES ] ] <lista seleccionada> [ INTO nueva_tabla ] [ FROM tabla ] [ WHERE condición ] [ GROUP BY expresión ] [ HAVING condición ] [ ORDER BY expresión [ ASC DESC ] ]

Clausula WHERE Ejemplos: USE AdventureWorks ; SELECT * FROM Person.Address WHERE City = 'San Francisco'; USE AdventureWorks ; SELECT * FROM Sales.SalesOrderHeader WHERE TotalDue > 1000;

Clausula WHERE <condición>: Define la condición que se debe cumplir para que se devuelvan las filas. <condición>: { [ NOT ] <predicate> ( <search_condition> ) } [ { AND OR } [ NOT ] { <predicate> ( <search_condition> ) } ] [,...n ] <predicate> ::= { expression { = < >! = > > =! > < < =! < } expression string_expression [ NOT ] LIKE string_expression expression [ NOT ] BETWEEN expression AND expression expression IS [ NOT ] NULL

Clausula WHERE Ejemplos: USE AdventureWorks ; SELECT * FROM Person.Address WHERE City = 'San Francisco' OR City = 'Orleans'; USE AdventureWorks ; SELECT * FROM Sales.SalesOrderHeader WHERE TotalDue > 1000 AND TaxAmt <500;

Clausula WHERE <condición>: Define la condición que se debe cumplir para que se devuelvan las filas. OPERADORES: - Operadores comparación: { = < >! = > > =! > < < =! < ALL ANY BETWEEN EXISTS IN LIKE SOME} - Operadores lógicos: NOT OR AND - IS [ NOT ] NULL

Clausula WHERE OPERADORES: Operadores de comparación: Operador Uso < Menor que > Mayor que <> Distinto de <= Menor ó Igual que >= Mayor ó Igual que = Igual que BETWEEN LIKE IN Utilizado para especificar un intervalo de valores. Utilizado en la comparación de un modelo Utilizado para especificar registros de una base de datos

Clausula WHERE OPERADORES: Operadores lógicos: Operador Uso AND OR NOT Es el "y" lógico. Evalúa dos condiciones y devuelve un valor de verdad sólo si ambas son ciertas. Es el "o" lógico. Evalúa dos condiciones y devuelve un valor de verdar si alguna de las dos es cierta. Negación lógica. Devuelve el valor contrario de la expresión.

Clausula WHERE OPERADORES: Operadores lógicos: <expresión1> Operador <expresión2> Resultado Verdad AND Falso Falso Verdad AND Verdad Verdad Falso AND Verdad Falso Falso AND Falso Falso Verdad OR Falso Verdad Verdad OR Verdad Verdad Falso OR Verdad Verdad Falso OR Falso Falso

Clausula WHERE Operador BETWEEN Para indicar que deseamos recuperar los registros según el intervalo de valores de un campo Ejemplo: <expression [ NOT ] BETWEEN valor1 AND valor2> USE AdventureWorks SELECT ListPrice FROM Production.ProductListPriceHistory WHERE ListPrice BETWEEN 9 AND 15

Clausula WHERE Operador BETWEEN Ejemplo: USE AdventureWorks SELECT ModifiedDate FROM Production.ProductListPriceHistory WHERE ModifiedDate BETWEEN '2002-06-30' AND '2003-06-10'

Clausula WHERE Operador IN Devuelve aquellos registros cuyo campo indicado coincide con algún valor de una lista. Ejemplo: <expresión [ NOT ] IN lista> USE AdventureWorks SELECT CountryRegionCode, Name FROM Person.StateProvince WHERE CountryRegionCode IN ('US','CA','DE')

Clausula WHERE Operador LIKE Se utiliza para comparar una expresión de cadena con un modelo en una expresión SQL <expresión LIKE modelo> En donde modelo es una cadena modelo o campo contra el que se compara expresión Ejemplo: USE AdventureWorks SELECT ProductModelID, Name FROM Production.ProductModel WHERE Name LIKE 'Mountain%'

Clausula WHERE Operador LIKE La utilización de caracteres comodín hace que el operador LIKE sea más flexible <expresión LIKE modelo%> Carácter comodín Descripción Ejemplo % Cualquier cadena de cero o más caracteres. WHERE title LIKE '%computer%' busca todos los títulos de libros que contengan la palabra 'computer' en el título. _ (carácter de subrayado) Cualquier carácter. WHERE au_fname LIKE _ean busca todos los nombres de cuatro letras que terminen en ean (Dean, Sean, etc.)

Clausula WHERE Operador LIKE Ejemplos: USE AdventureWorks SELECT ProductModelID, Name FROM Production.ProductModel WHERE Name LIKE '%Seat/Saddle%' USE AdventureWorks SELECT ProductModelID, Name FROM Production.ProductModel WHERE Name LIKE ' Road%'

Funciones de Fila Las funciones a nivel de filas operan sobre ellas y devuelven un resultado por cada una. Existen diferentes tipos. Entre ellas: Categoría de la función Funciones de fecha y hora Funciones matemáticas Funciones de cadena Descripción Llevan a cabo operaciones sobre un valor de entrada de fecha y hora, y devuelven un valor numérico, de cadena o de fecha y hora. Realizan cálculos basados en valores de entrada proporcionados como parámetros a las funciones y devuelven valores numéricos. Realizan operaciones en el valor de entrada de una cadena (char o varchar) y devuelven una cadena o un valor numérico.

Funciones de Fila Funciones de Fecha y Hora GETDATE: Devuelve la fecha y hora actuales del sistema en el formato interno estándar de SQL Server 2005 para los valores datetime. Ejemplo: <GETDATE ( )> SELECT GETDATE ();

Funciones de Fila Funciones de Fecha y Hora DATEDIFF: Devuelve el número de límites de fecha y hora entre dos fechas especificadas. <DATEDIFF ( datepart, startdate, enddate )> Ejemplos: USE AdventureWorks SELECT BirthDate as FechaNac, DATEDIFF(year, BirthDate, getdate()) as Edad FROM HumanResources.Employee WHERE DATEDIFF (year, BirthDate, getdate()) > 65

Funciones de Fila Funciones matemáticas ROUND: Devuelve un valor numérico, redondeado a la longitud o precisión especificadas. Ejemplo: <ROUND ( numeric_expression, length [,function ] )> SELECT ROUND(123.9994, 3), ROUND(123.9995, 3); SELECT ROUND(123.4545, 2); SELECT ROUND(114.45, -2); SELECT ROUND(150.75, 0), ROUND(150.75, 0, 1);

Funciones de Fila Funciones de cadena LEN: Devuelve el número de caracteres de la expresión de cadena especificada, excluidos los espacios en blanco finales. Ejemplo: <LEN ( string_expression )> USE AdventureWorks; SELECT LEN(FirstName) AS Length, FirstName, LastName FROM Sales.vIndividualCustomer WHERE CountryRegionName = 'Australia';

Funciones de Fila Función CASE CASE: Evalúa una lista de condiciones y devuelve una de las varias expresiones de resultado posibles. La expresión CASE tiene dos formatos: CASE input_expression WHEN when_expression THEN result_expression [...n ] [ ELSE else_result_expression ] END Searched CASE expression: CASE WHEN Boolean_expression THEN result_expression [...n ] [ ELSE else_result_expression ] END

Funciones de Fila Función CASE Ejemplo: USE AdventureWorks; SELECT ProductNumber, Category = CASE ProductLine WHEN 'R' THEN 'Road' WHEN 'M' THEN 'Mountain' WHEN 'T' THEN 'Touring' WHEN 'S' THEN 'Other sale items' ELSE 'Not for sale' END, Name FROM Production.Product ORDER BY ProductNumber;

Funciones de Fila Función CASE Ejemplo: USE AdventureWorks; SELECT ProductNumber, Name, 'Price Range' = CASE WHEN ListPrice = 0 THEN 'Mfg item - not for resale' WHEN ListPrice < 50 THEN 'Under $50' WHEN ListPrice >= 50 and ListPrice < 250 THEN 'Under $250' WHEN ListPrice >= 250 and ListPrice < 1000 THEN 'Under $1000' ELSE 'Over $1000' END FROM Production.Product ORDER BY ProductNumber ;

Funciones de agregado (GRUPO) Las funciones de agregado realizan un cálculo sobre un conjunto de valores y devuelven un solo valor. Algunas funciones: AVG([DISTINCT] columna) MIN([DISTINCT] columna) SUM([DISTINCT] columna) COUNT(* [DISTINCT] columna) MAX([DISTINCT] columna)

Funciones de agregado (GRUPO) Ejemplo: USE AdventureWorks; SELECT AVG(VacationHours) as 'Average vacation hours', SUM (SickLeaveHours) as 'Total sick leave hours' FROM HumanResources.Employee WHERE Title LIKE 'Vice President%'; USE AdventureWorks; SELECT AVG(DISTINCT ListPrice) FROM Production.Product;

Clausula GROUP BY Combina los registros con valores idénticos en la lista de campos especificados, en un único registro. Para cada nuevo registro se crea un valor resumen si se incluye una función agregada (o función de grupo) en la lista de la SELECT. [ GROUP BY expresión ] [ HAVING condición ] SELECT [TOP expresión [PERCENT] [ WITH TIES ] ] <lista seleccionada> [ INTO nueva_tabla ] [ FROM tabla ] [ WHERE condición ] [ GROUP BY expresión ] [ HAVING condición ] [ ORDER BY expresión [ ASC DESC ] ]

Clausula GROUP BY Ejemplo: USE AdventureWorks ; SELECT SalesOrderID, SUM(LineTotal) AS SubTotal FROM Sales.SalesOrderDetail sod GROUP BY SalesOrderID ORDER BY SalesOrderID ; USE AdventureWorks; SELECT AVG(DISTINCT ListPrice) FROM Production.Product;

Clausula HAVING Especifica una condición de búsqueda para un grupo o agregado [ GROUP BY expresión ] [ HAVING condición ] <condición> Especifica la condición de búsqueda del grupo o del agregado que se debe cumplir.

Clausula HAVING Ejemplos: USE AdventureWorks ; SELECT SalesOrderID, SUM(LineTotal) AS SubTotal FROM Sales.SalesOrderDetail GROUP BY SalesOrderID HAVING SUM(LineTotal) > 100000.00 ORDER BY SubTotal DESC; SELECT DATEPART(yyyy,OrderDate) AS Year, SUM(TotalDue) AS AverageOrderAmt FROM Sales.SalesOrderHeader GROUP BY DATEPART(yyyy,OrderDate) HAVING DATEPART(yyyy,OrderDate) NOT BETWEEN 2001 AND 2003 ORDER BY DATEPART(yyyy,OrderDate);

Fin Tema Preguntas?