Вы находитесь на странице: 1из 3

EIA – Bases de Datos y Sistemas de Información

Access Practica – Consultas: SQL / QBE - Soluciones

Hoja con soluciones para la práctica SQL / QBE (practica 8):


Las soluciones son en SQL (porque eso necesita menos espacio ;-). Para ver con Access la misma
solución en QBE se tiene que seleccionar la “vista diseño”. Yo recomiendo que ustedes practiquen
ambas vistas (QBE y SQL).

1 Obtener todos los nombres de los vendedores

SELECT nombre
FROM vendedores
;

2 Obtener todas las fechas de las ventas y las unidades vendidas de cada fecha

SELECT fecha, unidadesVendidas


FROM ventas
;

3 Obtener todas las fechas de las ventas con las unidades vendidas, ordenar el resultado por fechas
(ascendente).

SELECT fecha, unidadesVendidas


FROM ventas
ORDER BY fecha ASC
;

4 Obtener todas las fechas de las ventas con las unidades vendidas, ordenar el resultado por fechas
(descendente).

SELECT fecha, unidadesVendidas


FROM ventas
ORDER BY fecha ASC
;

5 Definir una consulta (que devuelve el nombre) para averiguar si hay un vendedor que se llama
CARLOS.

SELECT nombre
FROM vendedores
WHERE nombre LIKE "Carlos*"
;

6 Definir una consulta (que devuelve el nombre) para averiguar si hay un vendedor que tiene las letras
AR en su nombre.

SELECT nombre
FROM vendedores
WHERE nombre LIKE "*ar*"
;

7 Obtener todas las fechas (con las unidades vendidas) en las cuales se vendieron 25 o mas unidades,
ordenar el resultado – la fecha con la mayor cantidad de unidas vendidas debe salir primero.

1 C. Lochmuller, 2008-1
EIA – Bases de Datos y Sistemas de Información
Access Practica – Consultas: SQL / QBE - Soluciones

SELECT fecha, unidadesVendidas


FROM ventas
WHERE unidadesVendidas >= 25
ORDER BY unidadesVendidas DESC
;

8 Obtener todas las fechas de las ventas con las unidades vendidas a partir del 01.08.2005 hasta el
08.08.2005. Ordenar el resultado por fechas de manera ascendente.

SELECT fecha, unidadesVendidas


FROM ventas
WHERE fecha BETWEEN #8/1/2005# AND #8/8/2005#
ORDER BY fecha ASC
;

O: WHERE fecha >= #8/1/2005# AND fecha <= #8/8/2005#


Observe la diferencia entre SQL y QBE con respeto a las fechas

9 Obtener el promedio de las unidades vendidas.

SELECT AVG(unidadesVendidas)
FROM ventas
;

10 Obtener el promedio de las unidades vendidas por el vendedor con el código V2. Además asignar la
palabra “Promedio” como titulo para este campo de la consulta.

SELECT AVG(unidadesVendidas) AS Promedio <- AS promedio es un “alias”


FROM ventas
WHERE vendedor IN ("V2")
;

11 Obtener el código del vendedor y el promedio de las unidades vendidas por cada vendedor
(código). Agrupar por vendedor (código).

SELECT vendedor, AVG(unidadesVendidas) AS Promedio


FROM ventas
GROUP BY vendedor
;

12 Obtener el numero (cantidad) de las ventas con mas de 20 unidades vendidas.

SELECT COUNT(*) AS VentasConMasDe20


FROM ventas
WHERE unidadesVendidas > 20
;

13 Obtener la suma (el total) de las unidades vendidas.

SELECT SUM(unidadesVendidas) AS SumaUnidadesVendidas


FROM ventas

2 C. Lochmuller, 2008-1
EIA – Bases de Datos y Sistemas de Información
Access Practica – Consultas: SQL / QBE - Soluciones

14 Obtener una lista con las ventas (fecha y unidades) de cada vendedor (nombre).
La orden de las columnas de la consulta debe ser nombre, fecha, unidades.

SELECT vendedores.nombre, ventas.fecha, ventas.unidadesVendidas


FROM ventas, vendedores
WHERE ventas.vendedor = vendedores.codigo <- “Natural JOIN” (de las 2 tablas)
;

15 Lo mismo como en Nº 14, pero esta vez se debe ordenar el resultado de la consulta primero por
nombre del vendedor y segundo por fecha de la venta (ascendente)

SELECT vendedores.nombre, ventas.fecha, ventas.unidadesVendidas


FROM ventas, vendedores
WHERE ventas.vendedor = vendedores.codigo
ORDER BY vendedores.nombre, ventas.fecha ASC
;

16 Definir una consulta que dar respuesta a la pregunta siguiente: ¿Cuanto vendió Pedro Pérez
Buendía? (Usar ambos tablas) – véase también las preguntas en la ultima pagina de la practica 6.

SELECT Sum(unidadesVendidas) AS Suma


FROM ventas, vendedores
WHERE ventas.vendedor= vendedores.codigo
AND vendedores.nombre LIKE "Pedro*"
;

17 Definir una consulta que dar respuesta a la pregunta siguiente: ¿Cuanto se vendió en el municipio
de Jamundí? (Usar ambos tablas) – véase también las preguntas en la ultima pagina de la practica 6.

SELECT Sum(unidadesVendidas) AS Suma


FROM ventas, municipios
WHERE ventas.ciudad= municipios.codigo
AND municipios.nombre = "Jamundí"
;

18 Definir una consulta que dar respuesta a la pregunta siguiente: ¿Cuanto se vendió de "Sardinas
Española"? (Usar ambos tablas) – véase también las preguntas en la ultima pagina de la practica 6.

SELECT Sum(unidadesVendidas) AS Suma


FROM ventas, productos
WHERE ventas.producto= productos.codigo
AND productos.nombre = "Sardinas La Española"
;

3 C. Lochmuller, 2008-1

Вам также может понравиться