Sie sind auf Seite 1von 28

Contenido

Lenguaje SQL
• Control de flujo:
• Case when
• Funciones
• Left, right, length, round, now, dayofweek, datepart, month, year
• Where: operadores lógicos y expresiones lógicas (AND,OR y NOT) y
operadores de comparación (>,<,>=,<=,!=,<> y =)
• Relaciones entre tablas: inner join, left join, right join, full join y cross
join.
• Utilizando Order by/Group by/Having: Funciones de agregado
(SUM,COUNT,AVG,MIN,MAX,etc)
Case When
CASE [expression]
WHEN [value | Boolean expression] THEN
[return value]
[ELSE [return value]]
END

La [expression] es opcional y contiene el nombre de


columna o de variable.

Ejemplo:
SELECT CASE Grado WHEN 1 THEN ‘Primero’ WHEN 2 THEN 'Segundo’
WHEN 3 THEN ‘Tercero’ ELSE ‘Otros’ END
Case When
Declare @Grado int

Set @Grado = 2

select Case @Grado


When 1 then
'Primero'
When 2 then
'Segundo'
When 3 then
'Tercero'
Else
'Otros'
End as Descripcion

Select Case When @Grado = 1 then 'Primero'


When @Grado = 2 then 'Segundo'
When @Grado = 3 then 'Tercero'
Else 'Otros'
End as Descripcion
Case When
Case When

Los datos de un columna deben ser compatibles, cuando


utilizamos CASE WHEN para presentar diferentes resultados,
los resultados deben ser compatibles
Ejercicio S1-2-a (Case When)
Ventas Totales por Trimestre Año 1997
Empleados I Trimestre II Trimestre III Trimestre IV Trimestre Total

Solo debe presentar una fila por


empleado, con la información Las ventas deben ser calculadas de la
solicitada información de Orders, siendo el
producto de cantidad * precio unidad

Para este ejercicio debe utilizar la base de datos Northwind proporcionada en la clase.
Para esta consulta deben hacer un select con agrupación (Group) y la función sum () para
consolidar la información, en este caso deben combinar Case When junto con la función Sum()
Ejercicio S2-a
• Listar todos los registros de la tabla de Customers – con todos los
campos de la tabla
Ejercicio S2-b
• Listar los campos específicos de la tabla de Customers, para los
clientes de la ciudad London
Ejercicio S2-c
• Presentar los registro que corresponden a la imagen siguiente:
Ejercicio S2-d
• Utilizando alias, favor cambiar el nombre de los campos de Customers
a Español. Como el ejemplo:
Ejercicio S2-e
• Utilizando todos los campos de la tabla Orders, listar los registros
donde su campo fecha OrderDate se encuentra para entre las fechas
01 de diciembre de 1997 al 15 de diciembre de 1997.
Ejercicio S2-f
• Utilizando todos los campos de la tabla Orders, listar los registros
donde su campo fecha OrderDate se encuentra para entre las fechas
01 de diciembre de 1997 al 15 de diciembre de 1997, y el campo
ShipCountry con el valor de Germany
Ejercicio S2-g
• Utilizando todos los campos de la tabla Orders, listar los registros
donde su campo fecha OrderDate es menor o igual al 31 de
diciembre de 1996, Ordenados en forma descendente por medio del
campo OrderDate
Ejercicio S2-h
• Hacer un ejemplo por Cada uno de los siguiente operadores del
select:
• Operadores
• Paréntesis ( )
• NOT
• AND,
• BETWEEN,
• IN,
• LIKE,
• OR
Ejercicio S2-i
• Utilizando las información de la tabla products, presentar los
productos de las categorías 1, 3 y 8 usando el operador IN.
Ejercicio S2-j
• Utilizando las información de la tabla products, presentar los
productos QUE NO sean de las categorías 1, 3 y 8 usando el operador
IN.
Ejercicio S2-k
• Utilizando la información de la tabla products, presente los productos
donde sus existencia (UnitsInStock) de encuentren en el rango de 50 y
90, para este ejercicio debe utilizar el operador Between y los datos
ordenado por existencia.
Ejercicio S2-l
• Utilizando la información de la tabla products, presente los productos
donde sus existencia (UnitsInStock) de encuentren en el rango de 50 y
90 y que serán de la categoría 3 (CategoryID), para este ejercicio debe
utilizar el operador Between y los datos ordenado por existencia.
Ejercicio S2-m
• Utilizando la información de la tabla products, presente los productos
donde sus existencia (UnitsInStock) de NO se encuentren en el rango
de 50 y 90 y que NO sean de la categoría 3 (CategoryID), para este
ejercicio debe utilizar el operador Between y los datos ordenado por
existencia.
Ejercicio S2-n
• Presentar todos los productos donde su nombre (ProductName)
inicie con la letra M, utilizar el operador Like.
Ejercicio S2-ñ
• Presentar todos los productos donde su nombre (ProductName) NO
inicie con la letra M, utilizar el operador Like.
Ejercicio S2-o
• Relacionando la tabla de products con la tabla de categories, agregar
a la consulta de la tabla de productos la columna de CategoryName
Ejercicio S2-p
• Utilizando la instrucción CASE WHEN, relacione la tablas de
Employees, Orders y Order Details. Filtrando las transacciones para el
rango de fecha (OrderDate) de 01/01/1997 al 28/02/1997.
Ejercicio S2-q
• Utilizando la instrucción CASE WHEN, relacione la tablas de
Employees, Orders y Order Details. Filtrando las transacciones para el
rango de fecha (OrderDate) de 01/01/1997 al 31/12/1997.
Ejercicio S2-r
• Utilizando la instrucción CASE WHEN, relacione la tablas de
Employees, Orders y Order Details. Filtrando las transacciones para el
rango de fecha (OrderDate) de 01/01/1997 al 31/12/1997. debe
sumar la información de los registro – usar la función SUM
Ejercicio S2-s
• Debe presentar la información agrupada por trimestre, utilizando la
instrucción CASE WHEN, relacione la tablas de Employees, Orders y
Order Details. Filtrando las transacciones para el rango de fecha
(OrderDate) de 01/01/1997 al 31/12/1997. debe sumar la
información de los registro – usar la función SUM
Ejercicio S2-t
• Utilizando las funciones de Left y Rigth extraiga la letra inicial y la letra
final del nombre (CompanyName) tomando los datos de la tabla de
Customers
Ejercicio S2-u
• Debe realizar el análisis y diseño (Creando el diagrama de pata de gallo) de
un sistema de registro de reservaciones de hotel, debe considerar las
entidades de cliente, registro de reservaciones, habitaciones, fechas de
entrada y fechas de salidas de clientes, también es importante registrar
requerimientos particulares de cada reservación como por ejemplo si el
huésped es alérgico a algún tipo de alimento o químico, que periódico
quiere que le sea entregado, si desea tener alarma para levantarse, cuantas
personas visitarán, y también debe tomar en cuenta la capacidad de las
habitaciones.
• Lista de Entidades:
• Requerimiento – (Tabla o Campo)
• Tipo de Habitación – (Tabla o Campo)
• Empleado - Entidad

Das könnte Ihnen auch gefallen