SlideShare una empresa de Scribd logo
Bases de Datos Unidad VIII Lenguaje SQL “ Lenguaje de Manipulación de Datos (DML) –  Consultas Avanzadas” Sergio Sánchez Rios. Ingeniero en Informática – Licenciado en Informática Docente Jornada Parcial Universidad Viña del Mar
Lenguaje de Manipulación de Datos (DML) Operadores Especiales   Concatenación Permite concatenar en una sola salida varios campos. Los campos deben ser String, sino lo son se pueden trasformar utilizando la operación  convert (tipo dato, campo) Ejemplo 1: Utilizando la base de datos  Northwind . Genere una lista de selección de la tabla Employees (Empleado) donde solo se genere una columna de salida y esta contenga los campos: EmployeeID, LastName y FirstName. Select  convert(nvarchar(2),EmployeeID) + ‘’ + LastName + ‘’ + FirstName as Nombre from Employees
Lenguaje de Manipulación de Datos (DML) Operadores Especiales   Literales Es cualquier cosa que no sea ni alias ni nombre de columna. Existen dos formas para colocar estos valores anexados a la Lista de Selección. Se puede colocar el mensaje entre  comillas simples (‘’)  o Colocar el nombre de la columna de salida entre corchetes [ ] = valor de salida. Ejemplo 2: Utilizando la tabla Employees liste las columnas EmployeeID, LastName, FirstName, además envié dos mensajes  en conjunto con cada fila utilizando para cada uno una de las opciones de literales. Select EmployeeID, LastName as Apellido, FirstName as Nombre, 'ESTOS SON EMPLEADOS' as Literal,  [Otra Forma] = 'Esta es otra forma' from Employees
Lenguaje de Manipulación de Datos (DML) Operadores Especiales   Between … AND …… Este operador se utiliza en la cláusula where, para poder restringir una lista de selección según un rango de valores. NOMENCLATURA: WHERE  Nombre_Columna  BETWEEN  parametro1  AND  parametro2 NOTA: parametro1 (Mínimo) y parametro2 (Máximo) Ejemplo 4: Suponga que queremos ver aquellos productos (Tabla Products) cuyos valores se encuentran entre los 4 y 20 Dólares.  Select *  from  Products where UnitPrice Between 5.0 and 20.0
Lenguaje de Manipulación de Datos (DML) Operadores Especiales   IN (Lista)  Este operador permite verificar si el campo se encuentra en una lista determinada o subconsulta. Retorna verdadero si el campos se encuentra en la lista.  NOMENCLATURA: WHERE campo_tabla IN (Lista de datos o Subconsulta) Ejemplo 5: Liste los campos de la tabla productos que tengan exactamente  un precio de 18, 19 y 10 dolares. Select * from Products where UnitPrice in (10.0,18.0,19.0)
Lenguaje de Manipulación de Datos (DML) Operadores Especiales   Like Esta palabra clave indica el patrón de ajuste con una condición de búsqueda. La coincidencia de patrones significa analizar una coincidencia entre una expresión y el patrón especificado en la condición de búsqueda. NOMENCLATURA: Columna_Tabla LIKE Patron_de_Busqueda Si la expresión coincide con el patrón se devuelve un valor booleano TRUE. En caso contrario se devuelve FALSO. La expresión (COLUMNA_TABLA) debe ser de tipo carácter. Los patrones son realmente expresiones de cadena. Y van acompañados de caracteres de comodín, que colocados en a expresión toman un significado especial.
Lenguaje de Manipulación de Datos (DML) Operadores Especiales   Like Carácter comodín no en rango, coincide con cualquier carácter distinto de m, n, o, p (según ejemplo anterior [ ^ mnop ]. [^ ] Carácter comodín en rango, coincide con cualquier carácter único en el rango o conjunto, tales como [m – p] o [ mnop ], significando que cualquiera de los caracteres puede ser m, n, o ,p. [ ] Subrayado, coincide con un único carácter. _ Símbolo de porcentaje, coincide con una cadena de cero o más caracteres.  % Descripción Carácter Comodín
Lenguaje de Manipulación de Datos (DML) Operadores Especiales   Like Ejemplo 7: Encontrar todos los apellidos (LastName) en la tabla Employees que comiencen con la letra <<S>>. Use el carácter comodín %. SELECT LastName FROM Employees WHERE LastName LIKE 'S%'  – Acá se arma la frase con el comodín Ejemplo 8: Para recuperar el apellido de los Empleados cuya primera letra comienza entre <<A>> y <<M>>. Utilice el comodín [ ]. SELECT LastName FROM Employees WHERE LastName LIKE '[A-M ]%'
Lenguaje de Manipulación de Datos (DML) Operadores Especiales   Like Ejemplo 9: Usar Base de Datos  Pubs . Para recuperar la información de un autor cuyo ID comienza con el numero 724, sabiendo que cada ID tiene el formato de tres dígitos seguidos por un guión, seguido por dos dígitos, otro guión y finalmente cuatro dígitos. Utilizar el comodín _ .  Select *  from authors  where au_id LIKE '724-__-____'
Lenguaje de Manipulación de Datos (DML) Operadores Especiales   IS NULL Realiza un testeo para valores que son Nulos. Retorna True si la columna es NULL sino retorna FALSE. NOMENCLATURA: WHERE Columna IS NULL Ejemplo 10: Usar base de datos  Northwind . Liste todos los campos de la tabla Suppliers cuya columna Región sea NULL. Select * from Suppliers where Region is null
Lenguaje de Manipulación de Datos (DML) Operadores de Agregado Las funciones de agregado son: SUM, AVG, COUNT, COUNT(*), MAX y MIN  Estas funciones generan valores de resumen en los conjuntos de resultados de las consultas. Una función de agregado (con la excepción de COUNT(*)) procesa todos los valores seleccionados en una única columna para generar un único resultado.  Las funciones de agregado se pueden aplicar a todas las filas de una tabla, a un subconjunto de la tabla especificado por una cláusula WHERE o a uno o varios grupos de filas de la tabla. Cuando se aplica una función de agregado, se genera un valor individual por cada conjunto de filas.
Lenguaje de Manipulación de Datos (DML) Operadores de Agregado Valor menor de la expresión. MIN ( expression ) Valor mayor de la expresión. MAX ( expression ) Número de filas seleccionadas. COUNT (*) Número de valores en la expresión. COUNT ( [ALL | DISTINCT]  expression ) Promedio de los valores de la expresión numérica. AVG ( [ALL | DISTINCT]  expression ) Total de los valores de la expresión numérica. SUM ( [ALL | DISTINCT]  expression ) Resultado Función de agregado
Lenguaje de Manipulación de Datos (DML) Operadores de Agregado SUM, AVG, COUNT, MAX y MIN omiten los valores NULL; COUNT(*) no lo hace. La palabra clave opcional DISTINCT se puede usar con SUM, AVG y COUNT para eliminar los valores duplicados antes de que se establezca la función de agregado. SUM y AVG se pueden usar sólo con columnas numéricas, como, por ejemplo, las de los tipos de datos  int ,  smallint ,  tinyint ,  decimal ,  numeric ,  float ,  real ,  money  y  smallmoney . MIN y MAX no se pueden usar con tipos de datos  bit . El resto de las funciones de agregado que no sean COUNT(*) no se puede usar con los tipos de datos  text  e  image .
Lenguaje de Manipulación de Datos (DML) Operadores de Agregado SUM Retorna:  Total de los valores de la expresión numérica. NOMENCLATURA: SUM (Columna para la suma) Ejemplo: Usando la base de dato PUBS. Calcula la suma de las ventas del año hasta la fecha (ytd_sales) de todos los libros de la tabla titles .   USE pubs  SELECT SUM(ytd_sales)  FROM titles
Lenguaje de Manipulación de Datos (DML) Operadores de Agregado AVG Retorna:  Promedio de los valores de la expresión numérica. NOMENCLATURA: AVG (Columna a Promediar) Ejemplo: Usando la base de datos PUBS.  Puede averiguar el precio promedio de todos los libros si se duplicaran los precios ( tabla titles ). SELECT avg (price * 2)  FROM titles
Lenguaje de Manipulación de Datos (DML) Operadores de Agregado MAX Retorna:  Valor mayor de la expresión. NOMENCLATURA: MAX (Columna a obtener el Máximo valor) Ejemplo:  Usando la base de dato PUBS. Muestre el mayor valor de las  las ventas del año (ytd_sales) de todos los libros de la tabla titles. USE pubs SELECT MAX(ytd_sales) FROM titles
Lenguaje de Manipulación de Datos (DML) Operadores de Agregado MIN Retorna:  Valor menor de la expresión. NOMENCLATURA: MIN (Columna a obtener el Mínimo valor) Ejemplo:  Usando la base de dato PUBS. Muestre el mínimo valor de las  ventas del año (ytd_sales) de todos los libros de la tabla titles. USE pubs SELECT MIN (ytd_sales) FROM titles
Lenguaje de Manipulación de Datos (DML) Operadores de Agregado COUNT Retorna:  Número de valores en la expresión. En el caso de utilizar (*) retorna el numero de filas. NOMENCLATURA: COUNT (expresión) o COUNT (*) Ejemplo: Usando la base de datos PUBS. Cuente las filas de la tabla titles. Use Pubs SELECT COUNT(*) FROM titles
Lenguaje de Manipulación de Datos (DML) Operadores de Agregado COUNT Ejemplo: Usando la base de datos PUBS. Cuente los datos de la tabla titles, cuyo tipo (TYPE) sea business . Use Pubs SELECT COUNT(TYPE) FROM titles WHERE TYPE = ‘business’
Lenguaje de Manipulación de Datos (DML) Sentencia GROUP BY Esta sentencia no permite dividir el resultado de una lista de selección en grupos más pequeños.  Para poder listar otras columnas con las funciones de agregación se debe utilizar esta sentencia. NOMENCLATURA: SELECT lista _de_seleccion FROM Tablas [WHERE  OPCIONAL] GROUP BY Nombre_columnas_de_grupo
Lenguaje de Manipulación de Datos (DML) Sentencia GROUP BY Ejemplo: Utilizando la base de datos PUBS. Liste las suma de las ventas por año ( ytd_sales ) hasta la fecha, clasificándolas por tipo (TYPE) de titulo (titles). Use Pubs SELECT TYPE,SUM(ytd_sales) FROM titles GROUP BY TYPE –Resultados mostrados por TYPE   Ejemplo: (GRUPOS DENTRO DE GRUPOS). Liste las sumas de las ventas por año (ydt_sales) hasta la fecha, clasificándolas por tipo (TYPE) y pub_id. Use Pubs SELECT TYPE, pub_id,SUM(ytd_sales) from titles Group by TYPE, pub_id - -  El orden de evaluación es TYPE, pub_id
Lenguaje de Manipulación de Datos (DML) Sentencia GROUP BY – CLAUSULA HAVING Esta cláusula se utiliza si se desea especificar cuales grupos van a ser desplegados, o sea, restringir los grupos que retornan. NOMENCLATURA: SELECT columnas FROM Tablas [WHERE OPCIONAL] GROUP BY columnas_para_grupos HAVING condiciones_para_grupos  Ejemplo: Utilizando el ultimo ejemplo. Liste solamente los grupos cuyo pub_id sea igual a 0877. Utilice HAVING SELECT TYPE, pub_id,SUM(ytd_sales) from titles Group by TYPE,pub_id HAVING pub_id = '0877‘  --ACA SE HACE RESTRICCION PARA LOS GRUPOS
Lenguaje de Manipulación de Datos (DML) TABLAS COMBINADAS Una tabla combinada es el resultado de una operación de combinación realizada sobre dos o más tablas. Se pueden realizar varios tipos de combinaciones de tablas: combinaciones internas (inner), externa completa (full outer), externa por la izquierda (left outer), externa por la derecha (rigth outer) y cruzada (cross). Combinación Interna (Inner Join):  Es el tipo de combinación predeterminado; especifica que solamente se han de incluir en el resultado filas de la tabla que satisfagan la condición ON. Para especificar una combinación hay que utilizar la palabra clave JOIN. Se utiliza la palabra clave ON para identificar la condición de búsqueda sobre la cual se basa la combinación. NOMENCLATURA: SELECT  columnas_de_las_tablas FROM  tabla1  JOIN  tabla2  ON  condiciones
Lenguaje de Manipulación de Datos (DML) TABLAS COMBINADAS Combinación Interna (Inner Join) Ejemplo: De la base de datos PUBS. Combine las tablas stores y discounts para mostrar que tienda (stor_id) ofrece un descuento y el tipo de descuento (discounttype).  Use Pubs SELECT s.stor_id as ALMACEN, d.discounttype as DESCUENTO FROM stores s JOIN discounts d  ON s.stor_id = d.stor_id    SELECT s.stor_id as ALMACEN, d.discounttype as DESCUENTO FROM stores as s,discounts as d  WHERE s.stor_id = d.stor_id
Lenguaje de Manipulación de Datos (DML) TABLAS COMBINADAS Combinación externas Completas (full Outer Join) Especifica que se debería incluir en el resultado las filas no coincidentes (filas que no cumplen con la condición ON) así como las filas que coincidan (filas que cumplen la condición ON). En el campo donde no es coincidente la condición se coloca NULL. Ejemplo: Utilice el mismo ejemplo anterior solo utilice en el from la instrucción FULL OUTER JOIN. Use Pubs SELECT s.stor_id as ALMACEN, d.discounttype as DESCUENTO FROM stores s FULL OUTER JOIN discounts d ON s.stor_id = d.stor_id
Lenguaje de Manipulación de Datos (DML) TABLAS COMBINADAS Combinación externa por la izquierda (Left Outer Join) Devuelve las filas coincidentes más todas las filas de la tabla que se especifican a la izquierda de la palabra clave JOIN. Ejemplo: Utilice el mismo ejemplo anterior solo utilice en el from la instrucción LEFT OUTER JOIN. Use Pubs SELECT s.stor_id as ALMACEN, d.discounttype as DESCUENTO FROM stores s  LEFT OUTER JOIN  discounts d ON s.stor_id = d.stor_id
Lenguaje de Manipulación de Datos (DML) TABLAS COMBINADAS Combinación externa por la derecha (Right Outer Join) Es lo contrario a Left Outer Join Ejemplo: Utilice el mismo ejemplo anterior solo utilice en el from la instrucción RIGHT OUTER JOIN. Use Pubs SELECT s.stor_id as ALMACEN, d.discounttype as DESCUENTO FROM stores s  RIGHT OUTER JOIN  discounts d ON s.stor_id = d.stor_id
Lenguaje de Manipulación de Datos (DML) SELECT ANIDADOS En algunas situaciones es necesario utilizar SELECT anidados para resolver cierta necesidades de consultas que no pueden ser resueltas utilizando un único SELECT.  Recordar que al realizar un SELECT se genera una tabla temporal de la lista de selección, esto es lo que realmente hace posible que se puedan generar consultas sobre consultas o condiciones sobre listas de selección. NOMENCLATURA: SELECT Lista_de_selección FROM Tablas o Otros Select. WHERE condiciones [JOIN | SUBCONSULTAS | etc. ]
Lenguaje de Manipulación de Datos (DML) SELECT ANIDADOS Ejemplo: Usando base de datos  Northwind . Muestre los Productos (ID del Producto, Nombre y Precio Unitario) que tengan un precio unitario igual al Máximo.  SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario  FROM Products WHERE UnitPrice = (SELECT MAX (UnitPrice) FROM Products) Ejemplo: Usando base de datos  Northwind . Muestre los Productos (ID del Producto, Nombre y Precio Unitario) que tengan un precio unitario igual al Mínimo. SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario  FROM Products WHERE UNITPRICE = (SELECT MIN(UNITPRICE) FROM Products)
Lenguaje de Manipulación de Datos (DML) Operador UNION Este operador mezcla los resultados de dos o más consultas en un solo conjunto de resultados que contiene todas las filas que pertenecen a las consultas de la unión.  Como restricción las columnas que se obtienen por la UNION en ambas consultas deben ser del mismo tipo de datos. NOMENCLATURA: SELECT * FROM TABLAS UNION [ ALL ] SELECT * FROM TABLAS
Lenguaje de Manipulación de Datos (DML) Operador UNION NOTA: Al usar el operador opcional ALL se listan como resultados todas las filas de ambas consultas. Sino no se utiliza ALL se lista la UNION es decir no se listan datos duplicados. Ejemplo: Realice una unión de las consultas anidadas vistas anteriormente. Usando ambas opciones de unión (Con y Sin ALL).  SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario  FROM Products WHERE UNITPRICE = (SELECT MIN(UNITPRICE) FROM Products) UNION SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario  FROM Products WHERE UNITPRICE = (SELECT MIN(UNITPRICE) FROM Products)
Lenguaje de Manipulación de Datos (DML) Operador UNION SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario  FROM Products WHERE UNITPRICE = (SELECT MIN(UNITPRICE) FROM Products) UNION ALL SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario  FROM Products WHERE UNITPRICE = (SELECT MIN(UNITPRICE) FROM Products)
Lenguaje de Manipulación de Datos (DML) Ejercicio USE BASE DE DATOS PUBS Obtenga la suma de los Precios Unitarios, cuyos productos tengan un precio igual al Máximo precio unitario o al Mínimo precio unitario de la lista de productos.
Bibliografía ,[object Object],[object Object],[object Object],[object Object],[object Object]

Más contenido relacionado

La actualidad más candente

Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2Sergio Sanchez
 
Ejercicio sql tienda informatica (1)
Ejercicio sql tienda informatica (1)Ejercicio sql tienda informatica (1)
Ejercicio sql tienda informatica (1)Jsrfs Montemayor
 
Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Erivan Martinez Ovando
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Osiris Mirerus
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacionalLuis Jherry
 
Bases de datos my sql
Bases de datos my sqlBases de datos my sql
Bases de datos my sqlevavivez
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos josecuartas
 
Consultas básicas en sql server
Consultas básicas en sql serverConsultas básicas en sql server
Consultas básicas en sql server
Rodrigo Alfaro Pinto
 
User defined Function in SQL
User defined Function in SQLUser defined Function in SQL
Dataset y datatable
Dataset y datatableDataset y datatable
Dataset y datatable
frank yordi tejada sanchez
 
Normalizacion de base de datos
Normalizacion de base de datosNormalizacion de base de datos
Normalizacion de base de datos
Sergio Sanchez
 
Sql ejercicios resueltos
Sql ejercicios resueltosSql ejercicios resueltos
Sql ejercicios resueltos
Jhon Jairo Pertuz Arenilla
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
NANO-06
 
DDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datosDDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datos
vargasaldanajohanna
 

La actualidad más candente (20)

Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2Unidad 6 Lenguaje Sql 2
Unidad 6 Lenguaje Sql 2
 
Ejercicio sql tienda informatica (1)
Ejercicio sql tienda informatica (1)Ejercicio sql tienda informatica (1)
Ejercicio sql tienda informatica (1)
 
Guía de ejercicios de normalizacion
Guía de ejercicios de normalizacionGuía de ejercicios de normalizacion
Guía de ejercicios de normalizacion
 
Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.Convertir Diagrama Entidad-Relacion a Modelo Relacional.
Convertir Diagrama Entidad-Relacion a Modelo Relacional.
 
Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1Alfabetos-Lenguajes y Automatas 1
Alfabetos-Lenguajes y Automatas 1
 
Algebra relacional
Algebra relacionalAlgebra relacional
Algebra relacional
 
Ejercicios sql
Ejercicios sqlEjercicios sql
Ejercicios sql
 
Bases de datos my sql
Bases de datos my sqlBases de datos my sql
Bases de datos my sql
 
Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos Sql DML Lenguaje de manipulación de datos
Sql DML Lenguaje de manipulación de datos
 
Consultas básicas en sql server
Consultas básicas en sql serverConsultas básicas en sql server
Consultas básicas en sql server
 
User defined Function in SQL
User defined Function in SQLUser defined Function in SQL
User defined Function in SQL
 
Dataset y datatable
Dataset y datatableDataset y datatable
Dataset y datatable
 
Normalizacion de base de datos
Normalizacion de base de datosNormalizacion de base de datos
Normalizacion de base de datos
 
Sql ejercicios resueltos
Sql ejercicios resueltosSql ejercicios resueltos
Sql ejercicios resueltos
 
Sql
SqlSql
Sql
 
Pilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datosPilas, colas, y listas estructura de datos
Pilas, colas, y listas estructura de datos
 
Pilas como estructura de datos..
Pilas como estructura de datos..Pilas como estructura de datos..
Pilas como estructura de datos..
 
Lista simple
Lista simpleLista simple
Lista simple
 
Sql presentacion
Sql presentacionSql presentacion
Sql presentacion
 
DDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datosDDL - Lenguaje de definición de datos
DDL - Lenguaje de definición de datos
 

Similar a Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)

Sentencia select
Sentencia selectSentencia select
Sentencia select
AnthonyLeonRuiz
 
Consultas de resumen
Consultas de resumenConsultas de resumen
Consultas de resumen
Juan Luis Hernández
 
SQL Parte 1.pdf
SQL Parte 1.pdfSQL Parte 1.pdf
SQL Parte 1.pdf
davidvargas666
 
Fundamentos de BD - Unidad 6 lenguaje sql
Fundamentos de BD - Unidad 6 lenguaje sqlFundamentos de BD - Unidad 6 lenguaje sql
Fundamentos de BD - Unidad 6 lenguaje sql
José Antonio Sandoval Acosta
 
Informatica
InformaticaInformatica
Informatica
etijaro
 
5 utn frba manual access 2010 funciones campos calculados
5  utn frba manual access 2010   funciones   campos calculados5  utn frba manual access 2010   funciones   campos calculados
5 utn frba manual access 2010 funciones campos calculados
Silvia O. Informática-Nticx
 
FORMATO DIAPOSITIVAS - dart y flutter.pptx
FORMATO DIAPOSITIVAS - dart y flutter.pptxFORMATO DIAPOSITIVAS - dart y flutter.pptx
FORMATO DIAPOSITIVAS - dart y flutter.pptx
EMMAFLORESCARMONA
 
Tipos de funciones
Tipos de funcionesTipos de funciones
Tipos de funcionesPauly778
 
Tipos de funciones
Tipos de funcionesTipos de funciones
Tipos de funcionesPauly778
 
Consultas condicionales en sq server
Consultas condicionales en sq serverConsultas condicionales en sq server
Consultas condicionales en sq server
Edwards Leon Paredes
 
8 Guía_Fundamentos de Base de Datos (2).docx
8 Guía_Fundamentos de Base de Datos (2).docx8 Guía_Fundamentos de Base de Datos (2).docx
8 Guía_Fundamentos de Base de Datos (2).docx
LeydyVeronicaDelgado
 
Ejemploddl dml-ok
Ejemploddl dml-okEjemploddl dml-ok
Ejemploddl dml-ok
BB
 
Que es una consulta
Que es una consultaQue es una consulta
Que es una consulta
lorena_stars
 
Unidad III
Unidad IIIUnidad III
Unidad III
Angélica Saa
 
LibreOffice Calc Básico
LibreOffice Calc BásicoLibreOffice Calc Básico
Consultas
ConsultasConsultas
Consultas
elena valiente
 

Similar a Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado) (20)

Sentencia select
Sentencia selectSentencia select
Sentencia select
 
Consultas de resumen
Consultas de resumenConsultas de resumen
Consultas de resumen
 
SQL Parte 1.pdf
SQL Parte 1.pdfSQL Parte 1.pdf
SQL Parte 1.pdf
 
SQL Parte 1.pdf
SQL Parte 1.pdfSQL Parte 1.pdf
SQL Parte 1.pdf
 
Fundamentos de BD - Unidad 6 lenguaje sql
Fundamentos de BD - Unidad 6 lenguaje sqlFundamentos de BD - Unidad 6 lenguaje sql
Fundamentos de BD - Unidad 6 lenguaje sql
 
Informatica
InformaticaInformatica
Informatica
 
5 utn frba manual access 2010 funciones campos calculados
5  utn frba manual access 2010   funciones   campos calculados5  utn frba manual access 2010   funciones   campos calculados
5 utn frba manual access 2010 funciones campos calculados
 
FORMATO DIAPOSITIVAS - dart y flutter.pptx
FORMATO DIAPOSITIVAS - dart y flutter.pptxFORMATO DIAPOSITIVAS - dart y flutter.pptx
FORMATO DIAPOSITIVAS - dart y flutter.pptx
 
EXCEL
EXCELEXCEL
EXCEL
 
Tipos de funciones
Tipos de funcionesTipos de funciones
Tipos de funciones
 
Tipos de funciones
Tipos de funcionesTipos de funciones
Tipos de funciones
 
Consultas condicionales en sq server
Consultas condicionales en sq serverConsultas condicionales en sq server
Consultas condicionales en sq server
 
8 Guía_Fundamentos de Base de Datos (2).docx
8 Guía_Fundamentos de Base de Datos (2).docx8 Guía_Fundamentos de Base de Datos (2).docx
8 Guía_Fundamentos de Base de Datos (2).docx
 
Ejemploddl dml-ok
Ejemploddl dml-okEjemploddl dml-ok
Ejemploddl dml-ok
 
Que es una consulta
Que es una consultaQue es una consulta
Que es una consulta
 
Unidad III
Unidad IIIUnidad III
Unidad III
 
Apunte practico 1
Apunte practico 1Apunte practico 1
Apunte practico 1
 
Teoria sql
Teoria sqlTeoria sql
Teoria sql
 
LibreOffice Calc Básico
LibreOffice Calc BásicoLibreOffice Calc Básico
LibreOffice Calc Básico
 
Consultas
ConsultasConsultas
Consultas
 

Más de Sergio Sanchez

Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)Sergio Sanchez
 
Unidad 5 TransformacióN Er A Relacional NormalizacióN
Unidad 5 TransformacióN Er A Relacional   NormalizacióNUnidad 5 TransformacióN Er A Relacional   NormalizacióN
Unidad 5 TransformacióN Er A Relacional NormalizacióNSergio Sanchez
 
Unidad 4 Modelo De Datos Para La ImplementacióN
Unidad 4 Modelo De Datos Para La ImplementacióNUnidad 4 Modelo De Datos Para La ImplementacióN
Unidad 4 Modelo De Datos Para La ImplementacióNSergio Sanchez
 
Unidad 3 Modelamiento De Datos Conceptual
Unidad 3 Modelamiento De Datos ConceptualUnidad 3 Modelamiento De Datos Conceptual
Unidad 3 Modelamiento De Datos Conceptual
Sergio Sanchez
 
Unidad 2 Modelo De Datos
Unidad 2 Modelo De DatosUnidad 2 Modelo De Datos
Unidad 2 Modelo De Datos
Sergio Sanchez
 
Unidad 1 IntroduccióN A Las Bases De Datos
Unidad 1 IntroduccióN A Las Bases De DatosUnidad 1 IntroduccióN A Las Bases De Datos
Unidad 1 IntroduccióN A Las Bases De Datos
Sergio Sanchez
 
Unidad 3.1 Prueba De Sistemas
Unidad 3.1 Prueba De SistemasUnidad 3.1 Prueba De Sistemas
Unidad 3.1 Prueba De SistemasSergio Sanchez
 
Unidad 2.3 Prueba De Programas
Unidad 2.3 Prueba De ProgramasUnidad 2.3 Prueba De Programas
Unidad 2.3 Prueba De ProgramasSergio Sanchez
 
Unidad 2.2 Escribiendo El Programa
Unidad 2.2 Escribiendo El ProgramaUnidad 2.2 Escribiendo El Programa
Unidad 2.2 Escribiendo El ProgramaSergio Sanchez
 
Unidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De SistemasUnidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De SistemasSergio Sanchez
 
Unidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De RequerimientosUnidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De RequerimientosSergio Sanchez
 
Unidad 1.2 B Metodos Agiles 1
Unidad 1.2 B Metodos Agiles  1Unidad 1.2 B Metodos Agiles  1
Unidad 1.2 B Metodos Agiles 1Sergio Sanchez
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos TradicionalesSergio Sanchez
 
Unidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De SoftwareUnidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De SoftwareSergio Sanchez
 
Unidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De ClasesUnidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De ClasesSergio Sanchez
 
Unidad 9 Patrones De DiseñO
Unidad 9 Patrones De DiseñOUnidad 9 Patrones De DiseñO
Unidad 9 Patrones De DiseñOSergio Sanchez
 
Unidad 8 Diagramas De InteraccióN
Unidad 8 Diagramas De InteraccióNUnidad 8 Diagramas De InteraccióN
Unidad 8 Diagramas De InteraccióNSergio Sanchez
 
Unidad 7 Mad Modelado DiseñO Contratos Y Casos De Uso Reales
Unidad 7 Mad Modelado DiseñO    Contratos Y Casos De Uso RealesUnidad 7 Mad Modelado DiseñO    Contratos Y Casos De Uso Reales
Unidad 7 Mad Modelado DiseñO Contratos Y Casos De Uso RealesSergio Sanchez
 
Unidad 6 Mad Modelado Analsis Diagrama De Secuencia Del Sistema
Unidad 6 Mad Modelado Analsis    Diagrama De Secuencia Del SistemaUnidad 6 Mad Modelado Analsis    Diagrama De Secuencia Del Sistema
Unidad 6 Mad Modelado Analsis Diagrama De Secuencia Del SistemaSergio Sanchez
 

Más de Sergio Sanchez (20)

Unidad 6 Lenguaje Sql
Unidad 6 Lenguaje SqlUnidad 6 Lenguaje Sql
Unidad 6 Lenguaje Sql
 
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
Unidad 6 Lenguaje Sql 3 (Restricciones Ddl Avanzado)
 
Unidad 5 TransformacióN Er A Relacional NormalizacióN
Unidad 5 TransformacióN Er A Relacional   NormalizacióNUnidad 5 TransformacióN Er A Relacional   NormalizacióN
Unidad 5 TransformacióN Er A Relacional NormalizacióN
 
Unidad 4 Modelo De Datos Para La ImplementacióN
Unidad 4 Modelo De Datos Para La ImplementacióNUnidad 4 Modelo De Datos Para La ImplementacióN
Unidad 4 Modelo De Datos Para La ImplementacióN
 
Unidad 3 Modelamiento De Datos Conceptual
Unidad 3 Modelamiento De Datos ConceptualUnidad 3 Modelamiento De Datos Conceptual
Unidad 3 Modelamiento De Datos Conceptual
 
Unidad 2 Modelo De Datos
Unidad 2 Modelo De DatosUnidad 2 Modelo De Datos
Unidad 2 Modelo De Datos
 
Unidad 1 IntroduccióN A Las Bases De Datos
Unidad 1 IntroduccióN A Las Bases De DatosUnidad 1 IntroduccióN A Las Bases De Datos
Unidad 1 IntroduccióN A Las Bases De Datos
 
Unidad 3.1 Prueba De Sistemas
Unidad 3.1 Prueba De SistemasUnidad 3.1 Prueba De Sistemas
Unidad 3.1 Prueba De Sistemas
 
Unidad 2.3 Prueba De Programas
Unidad 2.3 Prueba De ProgramasUnidad 2.3 Prueba De Programas
Unidad 2.3 Prueba De Programas
 
Unidad 2.2 Escribiendo El Programa
Unidad 2.2 Escribiendo El ProgramaUnidad 2.2 Escribiendo El Programa
Unidad 2.2 Escribiendo El Programa
 
Unidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De SistemasUnidad 2.1 DiseñO De Sistemas
Unidad 2.1 DiseñO De Sistemas
 
Unidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De RequerimientosUnidad 1.3 Analisis De Requerimientos
Unidad 1.3 Analisis De Requerimientos
 
Unidad 1.2 B Metodos Agiles 1
Unidad 1.2 B Metodos Agiles  1Unidad 1.2 B Metodos Agiles  1
Unidad 1.2 B Metodos Agiles 1
 
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos TradicionalesUnidad 1.2 A IntroduccióN A Los Proceso De Software   Modelos Tradicionales
Unidad 1.2 A IntroduccióN A Los Proceso De Software Modelos Tradicionales
 
Unidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De SoftwareUnidad 1.1 Que Es La Ing. De Software
Unidad 1.1 Que Es La Ing. De Software
 
Unidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De ClasesUnidad 10 Mad Diagrama De Clases
Unidad 10 Mad Diagrama De Clases
 
Unidad 9 Patrones De DiseñO
Unidad 9 Patrones De DiseñOUnidad 9 Patrones De DiseñO
Unidad 9 Patrones De DiseñO
 
Unidad 8 Diagramas De InteraccióN
Unidad 8 Diagramas De InteraccióNUnidad 8 Diagramas De InteraccióN
Unidad 8 Diagramas De InteraccióN
 
Unidad 7 Mad Modelado DiseñO Contratos Y Casos De Uso Reales
Unidad 7 Mad Modelado DiseñO    Contratos Y Casos De Uso RealesUnidad 7 Mad Modelado DiseñO    Contratos Y Casos De Uso Reales
Unidad 7 Mad Modelado DiseñO Contratos Y Casos De Uso Reales
 
Unidad 6 Mad Modelado Analsis Diagrama De Secuencia Del Sistema
Unidad 6 Mad Modelado Analsis    Diagrama De Secuencia Del SistemaUnidad 6 Mad Modelado Analsis    Diagrama De Secuencia Del Sistema
Unidad 6 Mad Modelado Analsis Diagrama De Secuencia Del Sistema
 

Último

Robótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptxRobótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptx
44652726
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
rafaelsalazar0615
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
raquelariza02
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
IsabellaRubio6
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
cristianrb0324
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Telefónica
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
Fernando Villares
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
Emilio Casbas
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
AlejandraCasallas7
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
cofferub
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
cdraco
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
cj3806354
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
vazquezgarciajesusma
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
Luis Enrique Zafra Haro
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
PABLOCESARGARZONBENI
 
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
CrystalRomero18
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
AlejandraCasallas7
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
ManuelCampos464987
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
zoecaicedosalazar
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
jjfch3110
 

Último (20)

Robótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptxRobótica educativa para la eduacion primaria .pptx
Robótica educativa para la eduacion primaria .pptx
 
Diagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestreDiagrama de flujo soporte técnico 5to semestre
Diagrama de flujo soporte técnico 5to semestre
 
proyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmusproyecto invernadero desde el departamento de tecnología para Erasmus
proyecto invernadero desde el departamento de tecnología para Erasmus
 
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdfEstructuras Básicas_ Conceptos Basicos De Programacion.pdf
Estructuras Básicas_ Conceptos Basicos De Programacion.pdf
 
Estructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdfEstructuras Básicas_Tecnología_Grado10-7.pdf
Estructuras Básicas_Tecnología_Grado10-7.pdf
 
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
Índice del libro "Big Data: Tecnologías para arquitecturas Data-Centric" de 0...
 
Posnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativaPosnarrativas en la era de la IA generativa
Posnarrativas en la era de la IA generativa
 
Inteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdfInteligencia Artificial y Ciberseguridad.pdf
Inteligencia Artificial y Ciberseguridad.pdf
 
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdfDesarrollo de Habilidades de Pensamiento.docx (3).pdf
Desarrollo de Habilidades de Pensamiento.docx (3).pdf
 
Conceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación ProyectoConceptos Básicos de Programación Proyecto
Conceptos Básicos de Programación Proyecto
 
3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto3Redu: Responsabilidad, Resiliencia y Respeto
3Redu: Responsabilidad, Resiliencia y Respeto
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
(PROYECTO) Límites entre el Arte, los Medios de Comunicación y la Informática
 
biogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectosbiogas industrial para guiarse en proyectos
biogas industrial para guiarse en proyectos
 
EduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clasesEduFlex, una educación accesible para quienes no entienden en clases
EduFlex, una educación accesible para quienes no entienden en clases
 
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTALINFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
INFORME DE LAS FICHAS.docx.pdf LICEO DEPARTAMENTAL
 
Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.Desarrollo de Habilidades de Pensamiento.
Desarrollo de Habilidades de Pensamiento.
 
Diagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdfDiagrama de flujo basada en la reparacion de automoviles.pdf
Diagrama de flujo basada en la reparacion de automoviles.pdf
 
trabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6ftrabajo de tecnologia, segundo periodo 9-6f
trabajo de tecnologia, segundo periodo 9-6f
 
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdfTrabajo Coding For kids 1 y 2 grado 9-4.pdf
Trabajo Coding For kids 1 y 2 grado 9-4.pdf
 

Unidad 6 Lenguaje Sql 4 (Consultas Dml Avanzado)

  • 1. Bases de Datos Unidad VIII Lenguaje SQL “ Lenguaje de Manipulación de Datos (DML) – Consultas Avanzadas” Sergio Sánchez Rios. Ingeniero en Informática – Licenciado en Informática Docente Jornada Parcial Universidad Viña del Mar
  • 2. Lenguaje de Manipulación de Datos (DML) Operadores Especiales Concatenación Permite concatenar en una sola salida varios campos. Los campos deben ser String, sino lo son se pueden trasformar utilizando la operación convert (tipo dato, campo) Ejemplo 1: Utilizando la base de datos Northwind . Genere una lista de selección de la tabla Employees (Empleado) donde solo se genere una columna de salida y esta contenga los campos: EmployeeID, LastName y FirstName. Select convert(nvarchar(2),EmployeeID) + ‘’ + LastName + ‘’ + FirstName as Nombre from Employees
  • 3. Lenguaje de Manipulación de Datos (DML) Operadores Especiales Literales Es cualquier cosa que no sea ni alias ni nombre de columna. Existen dos formas para colocar estos valores anexados a la Lista de Selección. Se puede colocar el mensaje entre comillas simples (‘’) o Colocar el nombre de la columna de salida entre corchetes [ ] = valor de salida. Ejemplo 2: Utilizando la tabla Employees liste las columnas EmployeeID, LastName, FirstName, además envié dos mensajes en conjunto con cada fila utilizando para cada uno una de las opciones de literales. Select EmployeeID, LastName as Apellido, FirstName as Nombre, 'ESTOS SON EMPLEADOS' as Literal, [Otra Forma] = 'Esta es otra forma' from Employees
  • 4. Lenguaje de Manipulación de Datos (DML) Operadores Especiales Between … AND …… Este operador se utiliza en la cláusula where, para poder restringir una lista de selección según un rango de valores. NOMENCLATURA: WHERE Nombre_Columna BETWEEN parametro1 AND parametro2 NOTA: parametro1 (Mínimo) y parametro2 (Máximo) Ejemplo 4: Suponga que queremos ver aquellos productos (Tabla Products) cuyos valores se encuentran entre los 4 y 20 Dólares. Select * from Products where UnitPrice Between 5.0 and 20.0
  • 5. Lenguaje de Manipulación de Datos (DML) Operadores Especiales IN (Lista) Este operador permite verificar si el campo se encuentra en una lista determinada o subconsulta. Retorna verdadero si el campos se encuentra en la lista. NOMENCLATURA: WHERE campo_tabla IN (Lista de datos o Subconsulta) Ejemplo 5: Liste los campos de la tabla productos que tengan exactamente un precio de 18, 19 y 10 dolares. Select * from Products where UnitPrice in (10.0,18.0,19.0)
  • 6. Lenguaje de Manipulación de Datos (DML) Operadores Especiales Like Esta palabra clave indica el patrón de ajuste con una condición de búsqueda. La coincidencia de patrones significa analizar una coincidencia entre una expresión y el patrón especificado en la condición de búsqueda. NOMENCLATURA: Columna_Tabla LIKE Patron_de_Busqueda Si la expresión coincide con el patrón se devuelve un valor booleano TRUE. En caso contrario se devuelve FALSO. La expresión (COLUMNA_TABLA) debe ser de tipo carácter. Los patrones son realmente expresiones de cadena. Y van acompañados de caracteres de comodín, que colocados en a expresión toman un significado especial.
  • 7. Lenguaje de Manipulación de Datos (DML) Operadores Especiales Like Carácter comodín no en rango, coincide con cualquier carácter distinto de m, n, o, p (según ejemplo anterior [ ^ mnop ]. [^ ] Carácter comodín en rango, coincide con cualquier carácter único en el rango o conjunto, tales como [m – p] o [ mnop ], significando que cualquiera de los caracteres puede ser m, n, o ,p. [ ] Subrayado, coincide con un único carácter. _ Símbolo de porcentaje, coincide con una cadena de cero o más caracteres. % Descripción Carácter Comodín
  • 8. Lenguaje de Manipulación de Datos (DML) Operadores Especiales Like Ejemplo 7: Encontrar todos los apellidos (LastName) en la tabla Employees que comiencen con la letra <<S>>. Use el carácter comodín %. SELECT LastName FROM Employees WHERE LastName LIKE 'S%' – Acá se arma la frase con el comodín Ejemplo 8: Para recuperar el apellido de los Empleados cuya primera letra comienza entre <<A>> y <<M>>. Utilice el comodín [ ]. SELECT LastName FROM Employees WHERE LastName LIKE '[A-M ]%'
  • 9. Lenguaje de Manipulación de Datos (DML) Operadores Especiales Like Ejemplo 9: Usar Base de Datos Pubs . Para recuperar la información de un autor cuyo ID comienza con el numero 724, sabiendo que cada ID tiene el formato de tres dígitos seguidos por un guión, seguido por dos dígitos, otro guión y finalmente cuatro dígitos. Utilizar el comodín _ . Select * from authors where au_id LIKE '724-__-____'
  • 10. Lenguaje de Manipulación de Datos (DML) Operadores Especiales IS NULL Realiza un testeo para valores que son Nulos. Retorna True si la columna es NULL sino retorna FALSE. NOMENCLATURA: WHERE Columna IS NULL Ejemplo 10: Usar base de datos Northwind . Liste todos los campos de la tabla Suppliers cuya columna Región sea NULL. Select * from Suppliers where Region is null
  • 11. Lenguaje de Manipulación de Datos (DML) Operadores de Agregado Las funciones de agregado son: SUM, AVG, COUNT, COUNT(*), MAX y MIN Estas funciones generan valores de resumen en los conjuntos de resultados de las consultas. Una función de agregado (con la excepción de COUNT(*)) procesa todos los valores seleccionados en una única columna para generar un único resultado. Las funciones de agregado se pueden aplicar a todas las filas de una tabla, a un subconjunto de la tabla especificado por una cláusula WHERE o a uno o varios grupos de filas de la tabla. Cuando se aplica una función de agregado, se genera un valor individual por cada conjunto de filas.
  • 12. Lenguaje de Manipulación de Datos (DML) Operadores de Agregado Valor menor de la expresión. MIN ( expression ) Valor mayor de la expresión. MAX ( expression ) Número de filas seleccionadas. COUNT (*) Número de valores en la expresión. COUNT ( [ALL | DISTINCT] expression ) Promedio de los valores de la expresión numérica. AVG ( [ALL | DISTINCT] expression ) Total de los valores de la expresión numérica. SUM ( [ALL | DISTINCT] expression ) Resultado Función de agregado
  • 13. Lenguaje de Manipulación de Datos (DML) Operadores de Agregado SUM, AVG, COUNT, MAX y MIN omiten los valores NULL; COUNT(*) no lo hace. La palabra clave opcional DISTINCT se puede usar con SUM, AVG y COUNT para eliminar los valores duplicados antes de que se establezca la función de agregado. SUM y AVG se pueden usar sólo con columnas numéricas, como, por ejemplo, las de los tipos de datos int , smallint , tinyint , decimal , numeric , float , real , money y smallmoney . MIN y MAX no se pueden usar con tipos de datos bit . El resto de las funciones de agregado que no sean COUNT(*) no se puede usar con los tipos de datos text e image .
  • 14. Lenguaje de Manipulación de Datos (DML) Operadores de Agregado SUM Retorna: Total de los valores de la expresión numérica. NOMENCLATURA: SUM (Columna para la suma) Ejemplo: Usando la base de dato PUBS. Calcula la suma de las ventas del año hasta la fecha (ytd_sales) de todos los libros de la tabla titles . USE pubs SELECT SUM(ytd_sales) FROM titles
  • 15. Lenguaje de Manipulación de Datos (DML) Operadores de Agregado AVG Retorna: Promedio de los valores de la expresión numérica. NOMENCLATURA: AVG (Columna a Promediar) Ejemplo: Usando la base de datos PUBS. Puede averiguar el precio promedio de todos los libros si se duplicaran los precios ( tabla titles ). SELECT avg (price * 2) FROM titles
  • 16. Lenguaje de Manipulación de Datos (DML) Operadores de Agregado MAX Retorna: Valor mayor de la expresión. NOMENCLATURA: MAX (Columna a obtener el Máximo valor) Ejemplo: Usando la base de dato PUBS. Muestre el mayor valor de las las ventas del año (ytd_sales) de todos los libros de la tabla titles. USE pubs SELECT MAX(ytd_sales) FROM titles
  • 17. Lenguaje de Manipulación de Datos (DML) Operadores de Agregado MIN Retorna: Valor menor de la expresión. NOMENCLATURA: MIN (Columna a obtener el Mínimo valor) Ejemplo: Usando la base de dato PUBS. Muestre el mínimo valor de las ventas del año (ytd_sales) de todos los libros de la tabla titles. USE pubs SELECT MIN (ytd_sales) FROM titles
  • 18. Lenguaje de Manipulación de Datos (DML) Operadores de Agregado COUNT Retorna: Número de valores en la expresión. En el caso de utilizar (*) retorna el numero de filas. NOMENCLATURA: COUNT (expresión) o COUNT (*) Ejemplo: Usando la base de datos PUBS. Cuente las filas de la tabla titles. Use Pubs SELECT COUNT(*) FROM titles
  • 19. Lenguaje de Manipulación de Datos (DML) Operadores de Agregado COUNT Ejemplo: Usando la base de datos PUBS. Cuente los datos de la tabla titles, cuyo tipo (TYPE) sea business . Use Pubs SELECT COUNT(TYPE) FROM titles WHERE TYPE = ‘business’
  • 20. Lenguaje de Manipulación de Datos (DML) Sentencia GROUP BY Esta sentencia no permite dividir el resultado de una lista de selección en grupos más pequeños. Para poder listar otras columnas con las funciones de agregación se debe utilizar esta sentencia. NOMENCLATURA: SELECT lista _de_seleccion FROM Tablas [WHERE OPCIONAL] GROUP BY Nombre_columnas_de_grupo
  • 21. Lenguaje de Manipulación de Datos (DML) Sentencia GROUP BY Ejemplo: Utilizando la base de datos PUBS. Liste las suma de las ventas por año ( ytd_sales ) hasta la fecha, clasificándolas por tipo (TYPE) de titulo (titles). Use Pubs SELECT TYPE,SUM(ytd_sales) FROM titles GROUP BY TYPE –Resultados mostrados por TYPE Ejemplo: (GRUPOS DENTRO DE GRUPOS). Liste las sumas de las ventas por año (ydt_sales) hasta la fecha, clasificándolas por tipo (TYPE) y pub_id. Use Pubs SELECT TYPE, pub_id,SUM(ytd_sales) from titles Group by TYPE, pub_id - - El orden de evaluación es TYPE, pub_id
  • 22. Lenguaje de Manipulación de Datos (DML) Sentencia GROUP BY – CLAUSULA HAVING Esta cláusula se utiliza si se desea especificar cuales grupos van a ser desplegados, o sea, restringir los grupos que retornan. NOMENCLATURA: SELECT columnas FROM Tablas [WHERE OPCIONAL] GROUP BY columnas_para_grupos HAVING condiciones_para_grupos Ejemplo: Utilizando el ultimo ejemplo. Liste solamente los grupos cuyo pub_id sea igual a 0877. Utilice HAVING SELECT TYPE, pub_id,SUM(ytd_sales) from titles Group by TYPE,pub_id HAVING pub_id = '0877‘ --ACA SE HACE RESTRICCION PARA LOS GRUPOS
  • 23. Lenguaje de Manipulación de Datos (DML) TABLAS COMBINADAS Una tabla combinada es el resultado de una operación de combinación realizada sobre dos o más tablas. Se pueden realizar varios tipos de combinaciones de tablas: combinaciones internas (inner), externa completa (full outer), externa por la izquierda (left outer), externa por la derecha (rigth outer) y cruzada (cross). Combinación Interna (Inner Join): Es el tipo de combinación predeterminado; especifica que solamente se han de incluir en el resultado filas de la tabla que satisfagan la condición ON. Para especificar una combinación hay que utilizar la palabra clave JOIN. Se utiliza la palabra clave ON para identificar la condición de búsqueda sobre la cual se basa la combinación. NOMENCLATURA: SELECT columnas_de_las_tablas FROM tabla1 JOIN tabla2 ON condiciones
  • 24. Lenguaje de Manipulación de Datos (DML) TABLAS COMBINADAS Combinación Interna (Inner Join) Ejemplo: De la base de datos PUBS. Combine las tablas stores y discounts para mostrar que tienda (stor_id) ofrece un descuento y el tipo de descuento (discounttype). Use Pubs SELECT s.stor_id as ALMACEN, d.discounttype as DESCUENTO FROM stores s JOIN discounts d ON s.stor_id = d.stor_id  SELECT s.stor_id as ALMACEN, d.discounttype as DESCUENTO FROM stores as s,discounts as d WHERE s.stor_id = d.stor_id
  • 25. Lenguaje de Manipulación de Datos (DML) TABLAS COMBINADAS Combinación externas Completas (full Outer Join) Especifica que se debería incluir en el resultado las filas no coincidentes (filas que no cumplen con la condición ON) así como las filas que coincidan (filas que cumplen la condición ON). En el campo donde no es coincidente la condición se coloca NULL. Ejemplo: Utilice el mismo ejemplo anterior solo utilice en el from la instrucción FULL OUTER JOIN. Use Pubs SELECT s.stor_id as ALMACEN, d.discounttype as DESCUENTO FROM stores s FULL OUTER JOIN discounts d ON s.stor_id = d.stor_id
  • 26. Lenguaje de Manipulación de Datos (DML) TABLAS COMBINADAS Combinación externa por la izquierda (Left Outer Join) Devuelve las filas coincidentes más todas las filas de la tabla que se especifican a la izquierda de la palabra clave JOIN. Ejemplo: Utilice el mismo ejemplo anterior solo utilice en el from la instrucción LEFT OUTER JOIN. Use Pubs SELECT s.stor_id as ALMACEN, d.discounttype as DESCUENTO FROM stores s LEFT OUTER JOIN discounts d ON s.stor_id = d.stor_id
  • 27. Lenguaje de Manipulación de Datos (DML) TABLAS COMBINADAS Combinación externa por la derecha (Right Outer Join) Es lo contrario a Left Outer Join Ejemplo: Utilice el mismo ejemplo anterior solo utilice en el from la instrucción RIGHT OUTER JOIN. Use Pubs SELECT s.stor_id as ALMACEN, d.discounttype as DESCUENTO FROM stores s RIGHT OUTER JOIN discounts d ON s.stor_id = d.stor_id
  • 28. Lenguaje de Manipulación de Datos (DML) SELECT ANIDADOS En algunas situaciones es necesario utilizar SELECT anidados para resolver cierta necesidades de consultas que no pueden ser resueltas utilizando un único SELECT. Recordar que al realizar un SELECT se genera una tabla temporal de la lista de selección, esto es lo que realmente hace posible que se puedan generar consultas sobre consultas o condiciones sobre listas de selección. NOMENCLATURA: SELECT Lista_de_selección FROM Tablas o Otros Select. WHERE condiciones [JOIN | SUBCONSULTAS | etc. ]
  • 29. Lenguaje de Manipulación de Datos (DML) SELECT ANIDADOS Ejemplo: Usando base de datos Northwind . Muestre los Productos (ID del Producto, Nombre y Precio Unitario) que tengan un precio unitario igual al Máximo. SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario FROM Products WHERE UnitPrice = (SELECT MAX (UnitPrice) FROM Products) Ejemplo: Usando base de datos Northwind . Muestre los Productos (ID del Producto, Nombre y Precio Unitario) que tengan un precio unitario igual al Mínimo. SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario FROM Products WHERE UNITPRICE = (SELECT MIN(UNITPRICE) FROM Products)
  • 30. Lenguaje de Manipulación de Datos (DML) Operador UNION Este operador mezcla los resultados de dos o más consultas en un solo conjunto de resultados que contiene todas las filas que pertenecen a las consultas de la unión. Como restricción las columnas que se obtienen por la UNION en ambas consultas deben ser del mismo tipo de datos. NOMENCLATURA: SELECT * FROM TABLAS UNION [ ALL ] SELECT * FROM TABLAS
  • 31. Lenguaje de Manipulación de Datos (DML) Operador UNION NOTA: Al usar el operador opcional ALL se listan como resultados todas las filas de ambas consultas. Sino no se utiliza ALL se lista la UNION es decir no se listan datos duplicados. Ejemplo: Realice una unión de las consultas anidadas vistas anteriormente. Usando ambas opciones de unión (Con y Sin ALL). SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario FROM Products WHERE UNITPRICE = (SELECT MIN(UNITPRICE) FROM Products) UNION SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario FROM Products WHERE UNITPRICE = (SELECT MIN(UNITPRICE) FROM Products)
  • 32. Lenguaje de Manipulación de Datos (DML) Operador UNION SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario FROM Products WHERE UNITPRICE = (SELECT MIN(UNITPRICE) FROM Products) UNION ALL SELECT ProductID as ID,ProductName as Nombre, UnitPrice as Precio_Unitario FROM Products WHERE UNITPRICE = (SELECT MIN(UNITPRICE) FROM Products)
  • 33. Lenguaje de Manipulación de Datos (DML) Ejercicio USE BASE DE DATOS PUBS Obtenga la suma de los Precios Unitarios, cuyos productos tengan un precio igual al Máximo precio unitario o al Mínimo precio unitario de la lista de productos.
  • 34.