Está en la página 1de 19

Base de Datos

Unidad:

Creación de Base de Datos y


Manipulación de Datos
Pre(S04), CGT(S2)

Docente: JABS
Logro
Al término de la unidad, el estudiante desarrolla consultas y
sentencias de actualización de bases de datos en el motor de
base de datos SQL Server.
Importancia
Lograr que el trabajo con una Base de Datos nos sea familiar.
Aprenderemos a crear, carga de datos, consultar y modificar la
información de las tablas de una base de datos.
Contenido general

• Operador lógico IN, IS NULL


• Operador lógico LIKE
• Operador lógico BETWEEN
• Clausula GROUP BY
• Clausula HAVING
• Uso de CASE
• ¿Cómo armar una consulta?
Consultas Simples
Consultas Simples (IN, IS NULL)

• Seleccione todo de la tabla clientes cuyo país es USA o UK

• Seleccione todos los atributos de la tabla clientes cuya región


es NULL

• Seleccione todos los atributos de la tabla clientes cuya región


NO es NULL
Consultas Simples (LIKE)
• Seleccione todos los atributos de la tabla clientes con
nombre de compañía contiene las letras “por”

• Seleccione todos los atributos de la tabla clientes con


nombre de compañía que empiece con las letras “Fr”

• Seleccione todos los atributos de la tabla clientes con


nombre de compañía que la primera letra no importe cual
sea, pero la segunda sea “r” y el resto de letras que sea
cualquiera
Consultas Simples (BETWEEN)
• Seleccione todos los atributos de la tabla EMPLEADOS que
tienen su ID entre los valores 3 y 7

• Seleccione todos los atributos de la tabla EMPLEADOS que


nacieron entre el 01 de enero de 1950 y el 31 de diciembre
de 1960:
Consultas con agrupación
de datos
Consultas usando GROUP BY

Para mostrar resúmenes agrupados por una o varias columnas


• De la tabla de ordenes, mostrar la cantidad de ordenes para
cada país (campo ShipCountry).

• Muestre de la tabla de empleados la suma de salario por


país (Country)

• Muestre de la tabla de productos el máximo y mínimo precio


unitario por categoría.
Consultas usando GROUP BY

• De la tabla de ordenes, mostrar por cada mes del año según


la fecha de la orden (orderdate), cual es el promedio de
cobro de envío (freight). Ordene los resultados por número
de mes.

• De la tabla Clientes muestre la cantidad de registros, la


cantidad de registros según la columna país (country) que no
tiene nulos, la cantidad de registros según la columna región
(region) que tiene nulos.

Sin el group by acumula


todos los registros

• De empleados muestre la suma de todos los salarios


Consultas usando HAVING

Where no maneja agrupados. Having es como el Where pero


SOLO para agrupados como sum(), count(), avg(), min() y max().
• De la tabla de ordenes, mostrar por cada mes del año según
la fecha de la orden (orderdate), cual es el promedio de
cobro de envío (freight). Ordene los resultados por número
de mes. Esta es una consulta de la lámina anterior, pero
ahora deberá filtrar aquellos meses con promedio de cobro
de envío >= 80

• Repita la anterior consulta pero que además solo se


considere los empleados con cargo Representante de ventas
Consultas usando HAVING

• Muestre el código de Orden y la cantidad de detalles que


tiene cada una, pero filtrando que la cantidad de detalles
debe ser >= 3 y <= que 5.

• Muestre el código de Orden, la cantidad de detalles que


tiene cada una, la cantidad de diferentes códigos de
proveedor del producto, pero filtrando que la cantidad de
proveedores diferentes es menor a la cantidad de detalles.

Compruebe consultando una orden del resultado


Consultas usando CASE

Permite condicionales
• De la tabla de empleados, mostrar el titulo de la persona en
español y su apellido

• De la tabla empleados, muestre el apellido y una columna


que se llamara Situación y que retorne “Gringo con Dinero”
si es de USA y gana más de 3000, que retorne “Ingles con
Dinero” si es de UK y gana más de 3000. En cualquier otro
caso que retorne “Pobre”
Consultas usando CASE

• De la tabla ordenes, muestre por cada empleado el total de


envío por mes de enero a junio, con presentación tipo tabla
¿Cómo armar una consulta?
Pasos para armar una consulta

1. Entender el problema mirando el diagrama entidad relación


(DER), si está disponible
2. Usar el FROM y JOINs necesarios para unir todas las tablas
requeridas. Tenga en cuenta que podría requerir hacer
JOINS con subconsultas.
3. Usar GROUP BY si es necesario
4. Usar SELECT para indicar los campos que deben visualizarse
5. Filtrar los registros usando WHERE para condiciones simples
y HAVING para las agrupadas. Tenga en cuenta que podría
requerir hacer WHERE con subconsultas.
6. Ordenar los registros con ORDER BY
Conclusiones
• Para realizar consultas más complejas en una base de datos
se puede emplear diversas cláusulas como IN, LIKE, etc.
• SQL permite agrupar datos por un campo en especial para
resúmenes más fáciles de procesar.
• La sentencia CASE aumenta la flexibilidad de las consultas al
permitir condicionales.
Gracias
Docente: JABS

También podría gustarte