Práctica 7. Ejercicios:
|
|
- Juan Carlos Zúñiga Salas
- hace 5 años
- Vistas:
Transcripción
1 Práctica 7 Objetivos de aprendizaje: Unión, intersección y diferencia de sentencias de selección. Presentación ordenada de los resultados de una consulta. Aplicaciones y utilización de la operación de concatenación externa (outer join). Ejercicios: 1. Códigos de los clientes de la provincia de Castellón (código de provincia '12') que no tienen facturas. Resultado: 30 filas. Ayuda: Uso del operador minus. select c.codcli from pueblos p join clientes c using(codpue) where p.codpro = '12' minus select f.codcli ; 2. Nombre de las provincias con más de 500 pueblos y en las que hay más de 5 pueblos con clientes. Resultado: 3 filas. Ayuda: Uso del operador intersect. select pr.nombre from pueblos p, provincias pr where pr.codpro = p.codpro group by pr.codpro, pr.nombre having count( * ) > 500 intersect select pr.nombre, pueblos p, provincias pr where c.codpue = p.codpue and p.codpro = pr.codpro group by pr.codpro, pr.nombre having count( distinct p.codpue ) > 5; select pr.nombre from pueblos p join provincias pr using (codpro) group by codpro, pr.nombre having count( * ) > 500 intersect select pr.nombre 25
2 join pueblos p using (codpue) join provincias pr using (codpro) group by codpro, pr.nombre having count( distinct codpue ) > 5; 3. Para cada factura del mes de diciembre del año pasado se desea obtener el código, fecha y nombre del vendedor, ordenando el resultado por nombre de vendedor en primer lugar y después por código de factura. Resultado: 17 filas. Ayuda: Uso de una concatenación externa para que no se pierda ninguna factura sin vendedor asignado. select v.nombre, f.codfac, f.fecha from vendedores v right join facturas f using (codven) where to_char( f.fecha, 'mm' ) = '12' to_number( to_char( sysdate, 'yyyy' ) ) - 1 order by 1, 2; select v.nombre, f.codfac, f.fecha, vendedores v where v.codven (+) = f.codven and to_char( f.fecha, 'mm' ) = '12' to_number( to_char( sysdate, 'yyyy' ) ) - 1 order by 1, 2; 4. Nombre de los pueblos de Castellón que comienzan por AR, mostrando el número de facturas realizadas por los clientes de dicho pueblo. Si un pueblo no tiene clientes o sus clientes no tienen facturas, debe aparecer también en el listado. Resultado: 10 filas (1 pueblo con 10 facturas y el resto con 0 facturas). Ayuda: Uso de dos concatenaciones externas, pues puede haber pueblos sin clientes y clientes sin facturas. Agrupación de las facturas por pueblos. select p.nombre, count( f.codfac ) from pueblos p left join clientes c using (codpue) left join facturas f using (codcli) where upper( p.nombre ) like 'AR%' and p.codpro = '12' group by codpue, p.nombre; select p.nombre, count( f.codfac ) from pueblos p, clientes c, facturas f where p.codpue = c.codpue (+) and c.codcli = f.codcli (+) and upper( p.nombre ) like 'AR%' and p.codpro = '12' group by p.codpue, p.nombre; 26
3 5. Artículos que no han sido vendidos en los últimos tres años (el año pasado y los dos anteriores). Resultado: 8 filas. Ayuda: Uso del operador minus. select a.codart from articulos a minus select l.codart from lineas_fac l join facturas f using (codfac) where to_number( to_char( sysdate, 'yyyy' ) ) - to_number( to_char( f.fecha, 'yyyy' ) ) between 1 and 3 ; select a.codart from articulos a minus select l.codart from lineas_fac l, facturas f where f.codfac = l.codfac and to_number( to_char( sysdate, 'yyyy' ) ) - to_number( to_char( f.fecha, 'yyyy' ) ) between 1 and 3 ; 6. Código y precio de cada artículo con un precio superior a 50 euros y que en alguna de sus líneas de pedido haya tenido un precio inferior al 75 % de su precio. Cada artículo se debe presentar con el mínimo de dichos precios, y los artículos sin líneas de pedido deben presentarse con un valor igual a cero. Ordenar el resultado por el precio del artículo en orden ascendente, y para aquellos artículos con igual precio, ordenarlos por el valor del precio mínimo en orden descendente. Resultado: 10 filas. Ayuda: Aunque en principio parece que la consulta no se puede realizar con una concatenación externa por las condiciones que hay sobre las columnas de las tablas concatenadas, el operador nvl permite localizar los nulos y formular la consulta. select codart, a.precio, min( nvl( l.precio, 0 ) ) from articulos a left join lineas_fac l using (codart) where a.precio > 50 and nvl( l.precio, 0 ) < a.precio * 0.75 group by codart, a.precio order by 2, 3 desc; select a.codart, a.precio, min( nvl( l.precio, 0 ) ) from articulos a, lineas_fac l where a.codart = l.codart (+) and a.precio > 50 and nvl( l.precio, 0 ) < a.precio * 0.75 group by a.codart, a.precio order by 2, 3 desc; 7. Código y nombre de los clientes que son de algún pueblo de Valencia y alguna vez se les ha realizado una factura con más de 9 líneas de factura. Resultado: 4 filas. 27
4 Ayuda: Dado que las condiciones son sobre tablas diferentes, para no poner tantas tablas en el from, es más eficiente evaluarlas por separado y calcular su intersección. select codcli, c.nombre from clientes c join pueblos p using (codpue) join provincias pr using (codpro) where upper( pr.nombre ) = 'VALENCIA' intersect select codcli, c.nombre from clientes c join facturas f using (codcli) join lineas_fac l using (codfac) group by codcli, c.nombre, codfac having max( l.linea ) > 9; select c.codcli, c.nombre, pueblos p, provincias pr where c.codpue = p.codpue and p.codpro = pr.codpro and upper( pr.nombre ) = 'VALENCIA' intersect select c.codcli, c.nombre from lineas_fac l, facturas f, clientes c where c.codcli = f.codcli and f.codfac = l.codfac group by c.codcli, c.nombre, f.codfac having max( l.linea ) > 9; Ejercicios de autoevaluación: 8. Código y nombre de los pueblos de la provincia de Castellón cuyo nombre comienza por una B y en donde no hay clientes, o donde los clientes que hay no han comprado nada durante el último trimestre del año pasado. Ordenar el resultado por nombre de pueblo. Resultado: 36 filas. Ayuda: Los pueblos que buscamos son todos los de Castellón menos los que tienen algún cliente que haya comprado algo durante dicho periodo. select codpue, p.nombre from pueblos p where p.codpro = 12 and p.nombre like B% minus select codpue, p.nombre from pueblos p join clientes c using (codpue) join facturas f using (codcli) where p.codpro = '12' and to_number( to_char( f.fecha, yyyy ) )= to_number( to_char( sysdate, yyyy ) )-1 and to_char( f.fecha, 'q' ) = '4' order by 2; 28
5 select p.codpue, p.nombre from pueblos p where p.codpro = 12 and p.nombre like B% minus select p.codpue, p.nombre from pueblos p, clientes c, facturas f where c.codpue = p.codpue and f.codcli = c.codcli and p.codpro = '12' and to_number( to_char( f.fecha, yyyy ) )= to_number( to_char( sysdate, yyyy ) )-1 and to_char( f.fecha, 'q' ) = '4' order by 2; 9. Código de cada cliente y número de líneas de pedido que ha hecho, en el caso de que sean menos de 20 líneas. Resultado: 33 filas. Ayuda: Uso de dos concatenaciones externas pues hay clientes sin facturas y, por lo tanto, sin líneas de pedido. select codcli, count( l.linea ) from clientes c left join facturas f using (codcli) left join lineas_fac l using (codfac) group by codcli having count( l.linea ) < 20; select c.codcli, count( l.linea ) from lineas_fac l, facturas f, clientes c where c.codcli = f.codcli (+) and f.codfac = l.codfac (+) group by c.codcli having count( l.linea ) < 20; 10. Código de cada artículo y cantidad media que se suele hacer en las líneas de pedido de dicho artículo para aquellos artículos cuyo precio supera los 15 euros y cuyo código comienza por IM2F. Los artículos sin líneas de pedido deben presentarse con una cantidad media igual a cero. Resultado: 3 filas. Ayuda: A pesar de las condiciones, se puede formular una consulta con una concatenación externa. select codart, avg( nvl( l.cant, 0 ) ) from articulos a left join lineas_fac l using (codart) where codart like 'IM2F%' and a.precio > 15 group by codart; select a.codart, avg( nvl( l.cant, 0 ) ) from articulos a, lineas_fac l where a.codart = l.codart (+) and a.codart like 'IM2F%' 29
6 and a.precio > 15 group by a.codart; 30
7 Práctica 8 Objetivos de aprendizaje: Definición de subconsultas en las cláusulas where y having. Utilización de dos tipos de subconsultas en SQL: con referencia externa y sin referencia externa. Aprender a conectar consultas con sus subconsultas. Importante: Aunque los siguientes ejercicios pueden realizarse de muy diversas formas, se debe usar al menos una subconsulta para así practicar los conceptos introducidos en esta sesión. Ejercicios: 1. Número de clientes que tienen alguna factura con IVA 16%. Resultado: 97 clientes. Ayuda: Uso de una subconsulta. Se puede resolver tanto con referencia externa (exists) como sin referencia externa (in). select count( * ) where c.codcli in ( select f.codcli where f.iva = 16 ); select count( * ) where exists( select * where f.codcli = c.codcli and f.iva = 16 ); 2. Número de clientes que no tienen ninguna factura. Resultado: 30 clientes. Ayuda: Consulta y subconsulta (con o sin referencia externa) unidas mediante negación simple. 31
8 select count( * ) where c.codcli not in ( select f.codcli where f.codcli is not null ) ; select count( * ) where not exists( select * where f.codcli = c.codcli ) ; 3. Número de clientes que en todas sus facturas tienen un 16% de IVA (los clientes deben tener al menos una factura). Resultado: 1 cliente. Ayuda: Consulta con operación para todos. Solución con doble negación para calcular los clientes que no tienen ninguna factura con IVA diferente de 16 pero que si tienen alguna factura. select count( * ) where not exists( select * where f.codcli = c.codcli and nvl( f.iva, 0 ) <> 16 ) and exists( select * where f.codcli = c.codcli ) ; 4. Código y nombre de aquellos vendedores que han relizado más de 15 facturas. Resultado: 3 filas. Ayuda: La subconsulta utiliza una referencia externa para calcular el número de facturas de cada vendedor. select v.codven, v.nombre from vendedores v where 15 < ( select count( * ) where f.codven = v.codven ); 5. Nombre del vendedor con más facturas. Resultado: Boyano Ramírez, Ramón Germán. Ayuda: La subconsulta debe calcular el mayor número de facturas realizadas por un vendedor. 32
9 select v.nombre join vendedores v using (codven) group by codven, v.nombre having count( * ) = ( select max( count( * ) ) 2 group by f2.codven ) ; select v.nombre, vendedores v where v.codven = f.codven group by v.codven, v.nombre having count( * ) = ( select max( count( * ) ) 2 group by f2.codven ) ; 6. Código y nombre de aquellos clientes que siempre realizan sus compras en los primeros tres trimestres del año. Resultado: 4 clientes. Ayuda: Un siempre es equivalente a un para todo por lo que hay que usar la técnica de la doble negación. Se deben mostrar aquellos clientes que no tienen ninguna factura en el último trimestre y que al menos tienen una factura. select c.codcli, c.nombre where not exists( select * where f.codcli = c.codcli and to_number( to_char( fecha, q ) ) = 4 ) and exists( select * where f.codcli = c.codcli ) ; 7. Código y nombre de aquellos vendedores de la provincia de Castellón que han realizado facturas a clientes de más de tres provincias distintas. Resultado: 10 clientes. Ayuda: Uso de una subconsulta con referencia externa para calcular el número de provincias distintas de los clientes a los que ha realizado facturas un vendedor. select v.codven, v.nombre from vendedores v join pueblos p using (codpue) where p.codpro = 12 and 3 < ( select count( distinct p2.codpro ) from pueblos p2 join clientes c using (codpue) join facturas f using (codcli) where f.codven = v.codven ); 33
10 select v.codven, v.nombre from vendedores v, pueblos p where p.codpue = v.codpue and p.codpro = 12 and 3 < ( select count( distinct p2.codpro ) from pueblos p2, facturas f, clientes c where p2.codpue = c.codpue and f.codcli = c.codcli and f.codven = v.codven ); 8. Clientes (código y nombre) que fueron preferentes durante el mes de noviembre del año pasado y que en diciembre de ese mismo año no tienen ninguna factura. Son clientes preferentes de un mes aquellos que han solicitado más de 60,50 euros en facturas durante ese mes, sin tener en cuenta descuentos ni impuestos. Resultado: 7 clientes. Ayuda: Consulta con dos subconsultas al mismo nivel (una para comprobar la condición de noviembre y otra para comprobar la condición de diciembre). select c.codcli, c.nombre where < ( select sum( cant * precio ) from lineas_fac l join facturas f using(codfac) where f.codcli = c.codcli and to_char( f.fecha, 'mm' ) = '11' to_number( to_char( sysdate, 'yyyy' ) ) - 1 ) and c.codcli not in ( select f.codcli where to_char( f.fecha, 'mm' ) = '12' to_number( to_char( sysdate, 'yyyy' ) ) - 1 ) ; select c.codcli, c.nombre where < ( select sum( cant * precio ) from lineas_fac l, facturas f where f.codfac = l.codfac and f.codcli = c.codcli and to_char( f.fecha, 'mm' ) = '11' to_number( to_char( sysdate, 'yyyy' ) ) - 1 ) and c.codcli not in ( select f.codcli where to_char( f.fecha, 'mm' ) = '12' to_number( to_char( sysdate, 'yyyy' ) ) - 1 ) ; 34
11 Ejercicios de autoevaluación: 9. Fecha de la factura con mayor importe (sin tener en cuenta descuentos ni impuestos). Resultado: El 5 de mayo de hace 4 años. Ayuda: La subconsulta debe calcular el importe máximo de todas las facturas mediante una agrupación. select f.fecha from lineas_fac l join facturas f using(codfac) group by codfac, f.fecha having sum( l.cant * l.precio ) = ( select max( sum( l2.cant * l2.precio ) ) from lineas_fac l2 group by l2.codfac ) ; select f.fecha from lineas_fac l, facturas f where f.codfac = l.codfac group by f.codfac, f.fecha having sum( l.cant * l.precio ) = ( select max( sum( l2.cant * l2.precio ) ) from lineas_fac l2 group by l2.codfac ) ; 10. Código y descripción de aquellos artículos con un precio superior a la media y que hayan sido comprados por más de 12 clientes. Resultado: 6 artículos. Ayuda: Uso de subconsultas y agrupaciones. select codart, a.descrip from articulos a join lineas_fac l using (codart) join facturas f using (codfac) where a.precio > ( select avg( precio ) from articulos ) group by codart, a.descrip having count( distinct f.codcli ) > 12 ; select a.codart, a.descrip from lineas_fac l, facturas f, articulos a where a.codart = l.codart and f.codfac = l.codfac and a.precio > ( select avg( precio ) from articulos ) group by a.codart, a.descrip having count( distinct f.codcli ) > 12 ; 35
12 11. Para cada provincia, obtener el número de clientes que en todas las facturas del año pasado han pagado IVA (no se ha pagado IVA si es cero o nulo). No es necesario mostrar aquellas provincias que no tienen ningún cliente que cumpla esa condición. Resultado: 27 filas. Ayuda: Consulta con doble negación. select p.codpro, count( * ) from pueblos p join clientes c using (codpue) where not exists( select * where nvl( f.iva, 0 ) = 0 to_number( to_char( sysdate, 'yyyy' ) ) - 1 and f.codcli = c.codcli ) and exists( select f.codcli where to_number( to_char( f.fecha, 'yyyy' ) ) = to_number( to_char( sysdate, 'yyyy' ) ) - 1 and f.codcli = c.codcli ) group by p.codpro; select p.codpro, count( * ) from pueblos p, clientes c where p.codpue = c.codpue and not exists( select * where nvl( f.iva, 0 ) = 0 to_number( to_char( sysdate, 'yyyy' ) ) - 1 and f.codcli = c.codcli ) and exists( select f.codcli where to_number( to_char( f.fecha, 'yyyy' ) ) = to_number( to_char( sysdate, 'yyyy' ) ) - 1 and f.codcli = c.codcli ) group by p.codpro; 36
SUBCONSULTAS SUBCONSULTAS
SUBCONSULTAS Consulta SELECT que aparece dentro de otra consulta SELECT y que obtiene unos resultados intermedios que se utilizan para realizar una comparación en el WHERE o en el HAVING. select distinct
Más detallesPráctica 1. 1. Obtener el código y el doble del precio de los artículos cuyo precio es inferior a 5 céntimos de euro.
Práctica 1 Objetivos de aprendizaje: Funcionamiento de la sentencia select y sus cláusulas select, from y where. Uso del modificador distinct. Expresiones en las cláusulas select y where. Ejercicios: 1.
Más detallesUnion, Intersect, Minus
Union, Intersect, Minus WHERE UPPER(nombre) LIKE S% UNION WHERE UPPER(nombre) LIKE %N% ; 250 SARRION 44 490 ONDA 12 19 TERESA 12 45 PULPI 34 67 SORIA 22 14 TOLEDO 23 II18--Universitat Jaume I 1 Union,
Más detallesBoletín de Problemas de la Asignatura II18 Bases de Datos. Ingeniería Informática Universitat Jaume I
Boletín de Problemas de la Asignatura II18 Bases de Datos Ingeniería Informática Universitat Jaume I Ingeniería Informática. Universitat Jaume I II18 - Bases de Datos. Práctica 1 Práctica 1 Objetivos de
Más detallesFICHEROS Y BASES DE DATOS 2º ITIG 26/6/99. (2.5 puntos)
FICHEROS Y BASES DE DATOS 2º ITIG 26/6/99 NOMBRE: TEST GRUPO: (2.5 puntos) Escoger UNA SOLA respuesta para cada pregunta (A, B o C) y escribirla en la casilla correspondiente. Cada respuesta incorrecta
Más detallesFICHEROS Y BASES DE DATOS 2º ITIG 13/7/2000 NOMBRE: (1.75 puntos)
FICHEROS Y BASES DE DATOS 2º ITIG 13/7/2000 NOMBRE: TEST (1.75 puntos) Escoger UNA SOLA respuesta para cada pregunta (A, B o C) y escribirla en la casilla correspondiente. Cada respuesta incorrecta resta
Más detallesFICHEROS Y BASES DE DATOS 2º ITIG 13/7/2000. (1.75 puntos)
FICHEROS Y BASES DE DATOS 2º ITIG 13/7/2000 TEST (1.75 puntos) 1. Una diferencia entre los sistemas de ficheros (SF) y los sistemas de bases de datos (SBD) es que... (-)... los SF no pueden almacenar reglas
Más detallesFICHEROS Y BASES DE DATOS 2º ITIG 23/9/2000
FICHEROS Y BASES DE DATOS 2º ITIG 23/9/2000 GRUPO 1 1 PUNTO 1. En qué situación debe doblar su tamaño el directorio de un fichero de datos que utiliza la dispersión (hashing) extensible? (A) Cuando todos
Más detallesIntroducción 1 Recuperación de Datos mediante la Sentencia SQL SELECT
Introducción Objetivos I-2 Objetivos del Curso I-3 Oracle11g - 12cI-5 Oracle Database 11g - 12cI-6 Oracle Application Server 11g - 12cI-7 Oracle Enterprise Manager 11g - 12cGrid Control I-8 Sistema de
Más detallesManual Aprendiendo Practicando Oracle SQL (Spanish Edition) Click here if your download doesn"t start automatically
Manual Aprendiendo Practicando Oracle SQL (Spanish Edition) Click here if your download doesn"t start automatically Manual Aprendiendo Practicando Oracle SQL (Spanish Edition) Manual Aprendiendo Practicando
Más detallesFUNDAMENTOS ORACLE 12C
FUNDAMENTOS ORACLE 12C Introducción a Oracle Fundamentos 12c Aprende a programar en SQL con la base de datos más poderosa del mercado. Diseña y modela bases de datos corporativas utilizando las herramientas
Más detallesOracle Database 12c SQL and PLSQL Fundamentals
Oracle Database 12c SQL and PLSQL Fundamentals DESCRIPCION MODULOS DE CAPACITACION Introducción Información general sobre 12c de base de datos Oracle y productos afines Descripción de los conceptos y la
Más detallesFICHEROS Y BASES DE DATOS 2º ITIG 26/6/99. (2.5 puntos)
TEST FICHEROS Y BASES DE DATOS 2º ITIG 26/6/99 (2.5 puntos) 1. A qué se deben los problemas de fragmentación interna cuando un disco se divide en sectores? A que sectores y clusters tienen tamaño fijo.
Más detallesCapítulo 4. Realización de consultas
Capítulo 4 Realización de consultas ÍNDICE CAPÍTULO 4 Introducción sentencia SELECT Base de datos de ejemplo Consultas básicas Cláusula ORDER BY Cláusula DISTINCT Cláusula LIMIT Expresiones Funciones propias
Más detallesOracle Fundamentos. Programa de Estudio.
Oracle Fundamentos Programa de Estudio Oracle Fundamentos Aprende a programar en SQL con la base de datos más poderosa del mercado. Diseña y modela bases de datos corporativas utilizando las herramientas
Más detallesOracle Fundamentos. Programa de Estudio.
Oracle Fundamentos Programa de Estudio Oracle Fundamentos Aprende a programar en SQL con la base de datos más poderosa del mercado. Diseña y modela bases de datos corporativas utilizando las herramientas
Más detallesFICHEROS Y BASES DE DATOS 2º ITIG 13/9/99 NOMBRE: (2.5 puntos)
NOMBRE: TEST FICHEROS Y BASES DE DATOS 2º ITIG 13/9/99 (2.5 puntos) Escoger UNA SOLA respuesta para cada pregunta (A, B o C) y escriirla en la casilla correspondiente. Cada respuesta incorrecta resta la
Más detallesSQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de SQL Datos (DML)
SQL (DML) Carlos A. Olarte (carlosolarte@puj.edu.co) Gestión y Modelación de Datos Outline 1 Actualización, Inserción y Modificación 2 Consultas (Queries) 3 Renombramiento 4 Ordenamiento 5 Reuniones 6
Más detallesSQL. Carlos A. Olarte BDI
Carlos A. Olarte (carlosolarte@puj.edu.co) BDI Outline 1 Introducción 2 Select... from... where 3 Renombramiento 4 Ordenamiento 5 Reuniones 6 Operaciones sobre conjuntos 7 Funciones de Agregación 8 Subconsultas
Más detalleso SUM: suma los valores del campo que especifiquemos. Sólo se puede utilizar en columnas numéricas.
FUNCIONES DE AGREGADO Las funciones de agregado realizan un cálculo sobre un conjunto de valores y devuelven un solo valor. Si exceptuamos la función COUNT, todas las funciones de agregado ignoran los
Más detallesRESUMEN SQL. Tipo de coincidencia Modelo Planteado Coincide No coincide. Varios caracteres 'ab*' 'abcdefg', 'abc' 'cab', 'aab'
RESUMEN SQL Agustina Botas May COMO SE ESCRIBE UNA CONSULTA SELECT : campos WHERE : criterios que se aplican directamente a los datos (aplica a TODOS los registros) GROUP BY: agrupación de los datos seleccionados
Más detallesCC BASES DE DATOS OTOÑO 2018
CC3201-1 BASES DE DATOS OTOÑO 2018 Clase 6: SQL (II) Aidan Hogan aidhog@gmail.com Forma básica de una consulta de SQL Los planetas EL TEMA DE HOY MÁS SQL! Capítulo 5.4-5.6 Ramakrishnan / Gehrke El Álgebra
Más detallesCC BASES DE DATOS OTOÑO Clase 5: SQL (II) Aidan Hogan
CC3201-1 BASES DE DATOS OTOÑO 2017 Clase 5: SQL (II) Aidan Hogan aidhog@gmail.com El Cálculo Relacional (de tuplas) Fórmulas atómicas: Una fórmula puede ser Una fórmula atómica o Sean (recursivamente)
Más detallesSELECT SELECT WHERE WHERE GROUP BY
[,,...] * FROM [alias_tabla_1][, [alias_tabla_2],... [alias_tabla_n]] [] [GROUP BY [HAVING]]
Más detallesSQL DML Select. Ges$ón y Modelación de Datos. María Constanza Pabón
SQL DML Select Ges$ón y Modelación de Datos María Constanza Pabón mcpabon@javerianacali.edu.co SQL - DML Sentencias: INSERT UPDATE DELETE SELECT SQL - DML Query (consulta): proceso de recuperar datos de
Más detallesMaestría en Bioinformática. Bases de Datos y Sistemas de Información SQL: SELECT. Ing. Alfonso Vicente, PMP
Maestría en Bioinformática Bases de Datos y Sistemas de Información SQL: SELECT Ing. Alfonso Vicente, PMP alfonso.vicente@logos.com.uy Agenda SELECT en una tabla Joins Proyección y selección DISTINCT Funciones
Más detallesBASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Reglas de Integridad
BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Reglas de Integridad Lledó Museros / Ismael Sanz museros@icc.uji.es / isanz@icc.uji.es 1de 16 Índice 1. Introducción 2. Revisión Claves 3. Reglas
Más detallesPráctica 1: Contenido
Prácticas de Bases de Datos María José Aramburu Cabo Email: aramburu@icc.uji.es Web: http://www3.uji.es/~aramburu Despacho: TI2123DD Tutorías: Lunes y Martes de 11:00 a 13:00 h. Miércoles de 14:00 a 16:00
Más detallesSQL SERVER Curso Teórico-Práctico
SQL SERVER 2008-2012 Curso Teórico-Práctico IMPLEMENTACION DE LA BASE DE DATOS Nomenclatura Todas las tablas tendrán: - Un identificador de tipo entero auto numérico. Ésta será la clave primaria. La denominamos
Más detallesLenguaje de manipulación de datos
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 de la BD. El más popular es SQL. Tablas de ejemplo
Más detalles1. DML. Las consultas de resumen
1.1 Introducción 1. DML. Las consultas de resumen Una de las funcionalidades de la sentencia SELECT es el permitir obtener resúmenes de los datos contenidos en las columnas de las tablas. Para poder llevarlo
Más detallesSQL: Lenguaje de Interrogación Estructurado
SQL: Lenguaje de Interrogación Estructurado SQL Es el lenguaje para Bases de Datos Relacionales más usado Es un lenguaje declarativo: QUÉ no CÓMO El núcleo fundamental se basa en el Algebra Relacional,
Más detallesUso de sentencias avanzadas
Base de datos I Uso de sentencias avanzadas Objetivos: Elaborar sentencias de manejo de datos. Introducción: Después de trabajar con las sentencias de agregar, modificar, editar y visualizar datos, debemos
Más detallesCC BASES DE DATOS PRIMAVERA Clase 7: SQL (II) Aidan Hogan
CC3201-1 BASES DE DATOS PRIMAVERA 2016 Clase 7: SQL (II) Aidan Hogan aidhog@gmail.com El Cálculo Relacional (de tuplas) Fórmulas atómicas: Una fórmula puede ser Una fórmula atómica o Sean (recursivamente)
Más detallesAgrupamiento de registros. Elaboración de claúsulas avanzadas de selección. 31/12/2011. Unidad 9
Agrupamiento de registros Unidad 9 Elaboración de claúsulas avanzadas de selección. Un agrupamiento es el tratamiento único de varios registros que poseen un mismo valor de campo. Al realizar un agrupamiento,
Más detallesConsulta - select * from cliente whe Página número 1
Consulta - select * from cliente whe Página número 1 ---- Facturas a clientes de antequera select fa.* from Factura fa inner join Cliente cl on fa.cclnnif=cl.cclnnif where cclnpbl='pueblo1'; ---- Facturas
Más detallesConsultas SQL II. Diego Egüez. Universidad San Francisco de Quito (USFQ)
Consultas SQL II Diego Egüez Universidad San Francisco de Quito (USFQ) Abstract En este trabajo se exploran las consultas o queries en SQL. Se hace enfoque en consultas complejas y subconsultas. Los comandos
Más detallesGuía de ejercicios de SQL Prof. Mauricio E. Fernández N. Semestre Agosto-Diciembre de 2012
Guía de ejercicios de SQL Prof. Mauricio E. Fernández N. Semestre Agosto-Diciembre de 2012 Problema Enunciado: Sean las siguientes tablas de una base de datos Empleado (ndiemp, nomemp, sexemp, fecnac,
Más detallesSer capaces de realizar una consulta dentro de otra
TEMA 25: SUBCONSULTAS OBJETIVOS Ser capaces de realizar una consulta dentro de otra 1.- SUBCONSULTAS A veces interesa obtener dentro de una selección de datos, otra, esto se conoce como subconsulta. La
Más detallesPRESENTACION SQL SENTENCIAS SQL 5TO SEMESTRE DE INGENIERIA PROFESOR INGENIERO EDGAR SANDOVAL
PRESENTACION SQL SENTENCIAS SQL 5TO SEMESTRE DE INGENIERIA PROFESOR INGENIERO EDGAR SANDOVAL CLAUSULA SELECT La recuperación de los datos en el lenguaje SQL se realiza mediante la sentencia SELECT, seleccionar.
Más detallesBASES DE DATOS I CONSULTA DE DATOS
BASES DE DATOS I CONSULTA DE DATOS curso 2008 Agenda Repaso. Consultas Anidadas. Operadores : IN NOT IN EXIST NOT EXIST Agrupamiento. JOIN División. 1 Sentencia SELECT SELECT [ DISTINCT ]
Más detallesLENGUAJE DE MANIPULACIÓN DE DATOS (DML) CONSULTA DE DATOS
PREVIO 5 LENGUAJE DE MANIPULACIÓN DE DATOS (DML) CONSULTA DE DATOS INTRODUCCIÓN SQL permite realizar consultas con condiciones de búsqueda, de tal forma que los resultados son precisamente aquellos que
Más detallesConsultas Complejas:
Consultas Complejas: SELECCIÓN-AGRUPAMIENTO Un grupo se puede entender como un conjunto de filas con el mismo valor para el conjunto de columnas por las que se agrupa (las incluidas en la cláusula GROUP
Más detallesSQL Básico. José Muñoz Jimeno Febrero 2015
SQL Básico José Muñoz Jimeno Febrero 2015 Control de cambios Version Fecha Comentarios 1.0 13/02/2015 Primera versión para el curso Introducción a las bases de datos con MySQL en el COITCV La última versión
Más detallesPrueba de evaluación Solución OCW VJ1220 Bases de datos
Prueba de evaluación Solución OCW VJ1220 Bases de datos Los ejercicios de SQL que hay a continuación se han planteado sobre la base de datos de prácticas; su esquema se muestra a continuación. Las flechas
Más detallesLas soluciones de las consultas vistas en clase se encuentran en la página 5 en adelante.
Ing. Víctor Andrés Ochoa Correa CORPOCIDES REMINGTON Lenguaje SQL en MySQL Nivel III Las soluciones de las consultas vistas en clase se encuentran en la página 5 en adelante. TABLA EMPLE TABLA DEPART.
Más detallesSQL: Consultas Avanzadas. Bases de Datos
SQL: Consultas Avanzadas Bases de Datos Resumen: Consultas Básicas SELECT [DISTINCT] FROM [WHERE ] [GROUP BY ] [HAVING
Más detallesFicheros y Bases de Datos Curso Ingeniería Técnica de Informática Primer Parcial. 3-Septiembre Nombre:
Ficheros y Bases de Datos Curso 2009-10 Ingeniería Técnica de Informática Primer Parcial. 3-Septiembre-2010 Nombre: Se debe entregar esta hoja 2 horas 1 (3,5 puntos A partir de la información sobre la
Más detallesSQL, Consultas. Son Importantes las Consultas? Cuál es el Resultado de SELECT? Andrés Moreno S.
SQL, Consultas Andrés Moreno S. 1 Son Importantes las Consultas? Una cosa es guardar la información en forma estructurada y ordenada. Pero el utilizar la información y entender su relevancia son la clave
Más detallesqwertyuiopasdfghjklzxcvbnmqw ertyuiopasdfghjklzxcvbnmqwert yuiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiopa sdfghjklzxcvbnmqwertyuiopasdf
qwertyuiopasdfghjklzxcvbnmqw ertyuiopasdfghjklzxcvbnmqwert yuiopasdfghjklzxcvbnmqwertyui opasdfghjklzxcvbnmqwertyuiopa Consultas en sql 2da entrega Ingeniería de Sistemas - UNICA sdfghjklzxcvbnmqwertyuiopasdf
Más detalles1º) Consulta que pida mes y año y muestre los datos completos de los obreros que han trabajado sin repeticiones. C11
1º) Consulta que pida mes y año y muestre los datos completos de los obreros que han trabajado sin repeticiones. C11 Basándonos en la siguiente sentencita SQL: SELECT DISTINCT Obrero.* FROM Obrero INNER
Más detallesProcedimientos para agrupar y resumir datos
Procedimientos para agrupar y resumir datos Introducción Presentación de los primeros n valores Uso de funciones de agregado Fundamentos de GROUP BY Generación de valores de agregado dentro de los conjuntos
Más detallesLENGUAJE DE CONSULTA ESTRUCTURADO (SQL)
Qué es una base de datos? Una base de datos (cuya abreviatura es BD) es una entidad en la cual se pueden almacenar datos de manera estructurada, con la menor redundancia posible. Diferentes programas y
Más detallesEjemplo de gestión de datos con SQL
Ejemplo de gestión de datos con SQL 1. Crear la tabla FINCA: 2302010 0010 24 3931411 543 COMERÇ 3456912 0023 12 39411312 120 VIVENDES 1230101 00011 45 39328234 213 INDUSTRIA CREATE TABLE `finca` ( `refcad`
Más detallesBases de Datos Geográficos
Bases de Datos Geográficos SQL - Lenguaje de Bases de Datos Relacionales Instituto de Agrimensura - Facultad de Ingeniería Universidad de la República Introducción El nombre SQL (Structured Query Language)
Más detallesConsultas SQL resueltas Base de Datos FIUBA
Consultas SQL resueltas Base de Datos FIUBA Pablo Musumeci pmusumeci@fi.uba.ar Revisado por: Florencia Bosch Martín Buchwald 10 de febrero de 2014 1 1. Sueldos y pilotos 1.1. Esquemas Vuelo(VueloNro, Desde,
Más detallesVistas en InformiX Sistemas de Bases de Datos II EMT CETP A/S Leonardo Carámbula
Vistas en InformiX Características Una vista es una tabla virtual cuyo contenido está definido por una consulta SELECT. Al igual que una tabla real, una vista tiene: un nombre un conjunto de columnas con
Más detallesTaller de Herramientas de Software : ST 213 Secc: V y W
Universidad Nacional De Ingeniería Facultad Ingeniería Industrial y de Sistemas Taller de Herramientas de Software : ST 213 Secc: V y W SESION Nro. 9 CONSULTAS MULTITABLAS FUNCIONES RESUMEN Docente: Ing.
Más detallesPrograma de prácticas:
Práctica 3: El lenguaje SQL (1ª parte). Programa de prácticas: Práctica 1. Introducción al uso de una BD relacional (ACCESS). Práctica 2. Representación de la realidad en el modelo relacional de datos.
Más detallesBases de Datos 1. Teórico: Structured Query Language
Bases de Datos 1 Teórico: Structured Query Language Historia Los orígenes del SQL están ligados a los orígenes de las bases de datos relacionales Estandarizado por ANSI en 1986 (SQL-86) Hubieron varias
Más detallesUso de SQL. "WHERE id = " + cuentas[i].getid() o bien ResulSet r =s.executequery("select nombre FROM alumno" + "WHERE id = " + cuentas[i].
Introducción El lenguaje (Structured Query Language) es el lenguaje estándar para trabajo con bases de datos relacionales. Permite la definición, acceso y control de datos en una base de datos relacional.
Más detallesEJERCICIOS DE SQL. CONSULTAS MÁS COMPLEJAS (III)
Operaciones con bases de datos ofimáticas EJERCICIOS DE SQL. CONSULTAS MÁS COMPLEJAS (III) Ejercicios de SQL. Consultas más complejas (III). Pág. 1 EJERCICIOS DE SQL Nota: Estas tablas están orientadas
Más detallesConsultas SQL INNER JOIN
Consultas SQL INNER JOIN Inner join sólo produce los registros que coinciden en las dos tablas A y B. 2. INNER JOIN TablaB Full outer join produce el conjunto de todos los registros en las tablas A y B,
Más detallesBases de Datos y Sistemas de Información Curso Ingeniería Superior Primer Parcial.
Bases de Datos y Sistemas de Información Curso 2004-5. Ingeniería Superior Primer Parcial. 1) (2.5 puntos) Dados los esquemas de relación Clientes(numCl, nombre, apellido, teléfono, códigopostal) Pedidos(numPed,
Más detallesSQL. Amparo López Gaona. México, D.F. Noviembre 2003
Amparo López Gaona México, D.F. Noviembre 2003 Introducción El lenguaje SQL (Structured Query Language) es el lenguaje estándar para trabajo con bases de datos relacionales. Permite la definición, acceso
Más detallesORACLE 10g. Descripción A QUIEN VA DIRIGIDO?
ORACLE 10g Descripción A QUIEN VA DIRIGIDO? Está dirigido a estudiantes y profesionista que desee conocer la tecnología Oracle, así como realizar extracción de datos, creación de objetos y administración
Más detallesAdquisición y Tratamiento de Datos (Febrero 2009).
Adquisición y Tratamiento de Datos (Febrero 2009). Las cuestiones: 1ª parte: Cuestiones. Se deben responder en la hoja adjunta. Debe marcarse una única respuesta. Por favor, leer los enunciados y las soluciones
Más detallesLaboratorios de BASES DE DATOS. (I.T. Informática)
Laboratorios de BASES DE DATOS. (I.T. Informática) Gestor de bases de datos ORACLE M. Martínez, C. Hernández, C. Cuesta Dpto. de Informática (U. Valladolid) Base de datos de ejemplo EMPLEADOS (NOMBRE,
Más detallesAnexo 3 COMPONENTES DE SQL SERVER. Los DDL (Data Definition Languaje) que permiten crear y definir nuevas
Anexo 3 COMPONENTES DE SQL SERVER COMANDOS Existen tres tipos de comandos SQL [5]: Los DDL (Data Definition Languaje) que permiten crear y definir nuevas bases de datos, campos e índices. En la tabla se
Más detallesPráctica 3: El lenguaje SQL (1ª parte). Programa de prácticas: (5ª sesión). Lenguaje SQL: manipulación de datos (consulta y actualización):
Programa de prácticas: Práctica 1. Introducción al uso de una BD relacional (ACCESS). Práctica 3: El lenguaje SQL (1ª parte). Práctica 2. Representación de la realidad en el modelo relacional de datos.
Más detallesA.1. Definiciones de datos en SQL
A.1. Definiciones de datos en SQL Las Sentencias del lenguaje de definición de datos (DDL) que posee SQL operan en base a tablas. Las Principales sentencias DDL son las siguientes: CREATE TABLE DROP TABLE
Más detallesTEMA 4.. CONSULTA DE DATOS I.
TEMA 4.. CONSULTA DE DATOS I. 4.1 El lenguaje DML (Lenguaje de manipulación de datos) Las sentencias DML(Data Manipulation Language) del lenguaje SQL (Structured Query Language o Lenguaje de peticiones
Más detallesFUNCIONES EN SQL SERVER
FUNCIONES EN SQL SERVER FUNCIONES DE AGREGADO Las funciones de agregado retornan un simple valor, calculado desde el valor en la columna. Funciones de agregados más comunes: AVG() devuelve el valor promedio
Más detallesNombre: Se debe entregar esta hoja
Ficheros y Bases de Datos Curso 2008-9 Ingeniería Técnica de Informática Primer Parcial. 11-Feb-2009. Nombre: Se debe entregar esta hoja 1) (2,5 puntos) Construye el esquema entidad / relación para la
Más detallesEjercicios SQL - Manipulación de Datos - Solución
Ejercicios SQL - Manipulación de Datos - Solución 1. La Tienda de Informática 1.1. Obtener los nombres y los precios de los productos de la tienda. SELECT Nombre, Precio FROM ARTICULOS 1.2. Obtener el
Más detallesÍNDICE INTRODUCCIÓN...17
ÍNDICE INTRODUCCIÓN...17 CAPÍTULO 1. ORACLE 11g Y EL GRID COMPUTING...19 1.1 CONCEPTO DE GRID COMPUTING...19 1.2 ORACLE GRID COMPUTING...20 1.2.1 Almacenamiento eficiente de la información...21 1.2.2 Utilización
Más detallesPero es que además, en ocasiones no hay otra forma de conseguir el resultado deseado que crear la consulta directamente en SQL.
1. INTRODUCCIÓN A unque ya hemos visto cómo realizar consultas para obtener resultados de una base de datos Access a través de la vista Diseño, debes conocer el lenguaje en el que realmente se realizan
Más detallesStructured Query Language (SQL) Fundamentos de Bases de Datos InCo - 2011
Structured Query Language () Fundamentos de Bases de Datos InCo - Un poco de historia Lenguajes de consulta relacionales: SEQUEL (IBM-1970) QUEL (Ingres-1970) QBE (IBM-1970) es el lenguaje comercial más
Más detallesOperadores. Además se pueden emplear en sentencias SET.
Operadores MySQL dispone de multitud de operadores diferentes para cada uno de los tipos de columna. Esos operadores se utilizan para construir expresiones que se usan en cláusulas ORDER BY y HAVING de
Más detallesSQL SERVER SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server.
SQL SERVER 2005 Operaciones con Conjuntos SQL Server 2005 permite tres tipos de operaciones con conjuntos: UNION, disponible en todas las versiones de SQL Server. EXCEPT, nuevo en SQL Server 2005. INTERSECT,
Más detalles1. DML. Las consultas multitabla
1.1 Introducción 1. DML. Las consultas multitabla Hasta ahora hemos visto consultas que obtienen los datos de una sola tabla, en este tema veremos cómo obtener datos de diferentes tablas en una sola instrucción
Más detallesSQL Oracle 12c. Este curso le permitira saber y conocer:
SQL Oracle 12c Las habilidades de lenguaje SQL son una necesidad para cualquier trabajo de Tecnología de la información en la actualidad. Además, debido a la naturaleza estándar de la sintaxis del lenguaje
Más detallesUNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES. Xochitl Clemente Parra Armando Méndez Morales
UNIDAD 1.- PARTE 1 MANIPULACIÓN AVANZADA DE DATOS CON SQL. BASES DE DATOS PARA APLICACIONES Xochitl Clemente Parra Armando Méndez Morales Práctica preliminar Crear la siguiente base de datos de prácticas
Más detallesOracle Fundamentos. Programa de Estudio.
Oracle Fundamentos Programa de Estudio Oracle Fundamentos Aprende a programar en lenguaje SQL con la base de datos más poderosa del mercado. Diseña y Modela importantes bases de datos utilizando la herramienta
Más detallesSQL (Structured Query Language)- DML
SQL (Structured Query Language)- DML Data Manipulation Language: Data Definition Language: Control Commands: Authorization Commands: SELECT, UPDATE, INSERT, DELETE CREATE: TABLE, INDEX, VIEW DROP: TABLE,
Más detallesUnidad. Lenguaje SQL. (Structured Query Language)
Unidad Lenguaje SQL (Structured Query Language) 1 SQL Definición DDL Consulta y Actualización DML Create Alter Drop Select Insert Update Delete 2 SQL DDL CREATE TABLE nombre_tabla (nombre_columna tipo_dato/dominio
Más detallesEl lenguaje SQL es un lenguaje estándar para el acceso y
1. INTRODUCCIÓN El lenguaje SQL es un lenguaje estándar para el acceso y manipulación de bases de datos relacionales como SQL Server. Esto quiere decir que aprender SQL es algo indispensable para cualquier
Más detallesDatos Agregados por medio de Funciones de Grupo. Copyright Oracle Corporation, 1998. All rights reserved.
5 Datos Agregados por medio de Funciones de Grupo Copyright Oracle Corporation, 1998. All rights reserved. Objetivos Al completar esta lección, debería ser capaz de hacer lo siguiente: Identificar las
Más detalles: COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería de Redes y Comunicaciones : Administración de Bases de Datos I : T-INF127
I. DATOS INFORMATIVOS Carrera Especialidad Curso Código Ciclo : Tercero Requisitos Duración Horas Semana : 06 horas Versión : v.0110 II. SUMILLA : COMPUTACIÓN E INFORMATICA : Ingeniería de Software Ingeniería
Más detallesBase de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas)
Base de Datos Oracle 10g: Introducción a SQL Código: D17216 - Duración: 5 días (40 horas) Lo que aprenderá Esta clase es aplicable para los usuarios de Oracle8i, Oracle9i y Oracle Database 10g. En este
Más detallesBASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Algebra Relacional y SQL
BASES DE DATOS (IG18 Semipresencial) El Modelo Relacional Algebra Relacional y SQL Lledó Museros / Ismael Sanz museros@icc.uji.es / isanz@icc.uji.es 1de 60 Índice 1. Introducción 2. Operadores del Álgebra
Más detallesTema 7. Elaboración de consultas básicas de selección. Lenguajes de bases de datos. SQL básico 15/12/2011
Lenguajes de bases de datos Tema 7 Elaboración de consultas básicas de selección En esta unidad se abordan cuestiones que, aunque están definidas por el estándar ANSI/ISO SQL, no están asumidas al 100%
Más detallesCÓMO MEJORAR EL DESARROLLO SOFTWARE CON EL USO DE BASE DE DATOS CRISTIAN CAMILO RAMIREZ RUBIO COD:
CÓMO MEJORAR EL DESARROLLO SOFTWARE CON EL USO DE BASE DE DATOS CRISTIAN CAMILO RAMIREZ RUBIO COD: 066121026 MONOGRAFÍA PARA OPTAR EL TÍTULO DE INGENIERO DE SISTEMAS UNIVERSIDAD LIBRE FACULTAD DE INGENIERÍA
Más detallesFunciones agregadas. Funciones agregadas: COUNT
Funciones agregadas SUM, AVG, COUNT, MAX y MIN MAX y MIN - seleccionan valor máximo o mínimo en una columna Cuáles son las tarifas por hora máxima y mínima? SELECT MAX(TARIFA_HORA), MIN(TARIFA_HORA) 34
Más detallesSQL Avanzado. José Muñoz Jimeno Febrero 2015
SQL Avanzado José Muñoz Jimeno Febrero 2015 Control de cambios Versión Fecha Comentarios 1.0 13/02/2015 Primera versión para el curso Introducción a las bases de datos con MySQL en el COITCV La última
Más detallesManual de Sentencias Básicas en SQL
Manual de Sentencias Básicas en SQL Pues hoy que he estado enredando un rato con MySQl, y me he acordado de aquellos comienzos en los que tenía que volver a mis antiguos apuntes para lograr entender las
Más detallesBases de Datos - 2006. SQL - Ejemplos
Bases de Datos - 2006 SQL - Ejemplos Consideramos la siguiente base de datos relacional: persona(dni,primer-nombre,apellido) biblioteca(nombre-biblioteca,calle,número) libro(título,isbn,editorial,edición)
Más detallesFicheros y Bases de Datos Curso Primer Parcial. 7 de FEBRERO de Nombre:
Ficheros y Bases de Datos Curso 2012-2013 Primer Parcial. 7 de FEBRERO de 2013 Nombre: Se debe entregar esta hoja 1 (3,5 puntos A partir de la información sobre la BD que se describe más abajo, se pide:
Más detallesOperador Restricción
Algebra Relacional Conjunto de operadores que opera sobre relaciones Cada uno de estos operadores toma una o dos relaciones como entrada y produce una nueva relación como salida. Las relaciones originales
Más detalles