Medio parcial-2

SQL: clientes frecuentes y clientes sin pedidos

Fuente: Marqués (2011, Cap. 4) — ejercicio tipo parcial

sqljoingroup-byhavingnot-existsleft-joinsubconsultas

Esquema y datos

CLIENTE(id_cliente, nombre, ciudad)

id_clientenombreciudad
1AnaMedellín
2BetoBogotá
3CaroCali
4DaríoMedellín

PEDIDO(id_pedido, id_cliente, fecha, total)

id_pedidoid_clientefechatotal
10012026-01-05120000
10112026-01-2080000
10222026-02-01200000
10332026-02-1050000
10412026-03-0160000

PEDIDO.id_cliente es clave ajena hacia CLIENTE.id_cliente.

Enunciado

Escriba las siguientes consultas en SQL (MySQL):

  1. Clientes frecuentes. Nombre de cada cliente que ha realizado más de un pedido, junto con el número de pedidos y el total gastado, ordenado de mayor a menor total. Use JOIN, GROUP BY y HAVING.

  2. Clientes sin pedidos. Nombre de los clientes que nunca han hecho un pedido. Resuélvala de dos formas equivalentes: con NOT EXISTS (subconsulta correlacionada) y con LEFT JOIN ... IS NULL.

Indique además el resultado esperado de cada consulta sobre los datos de ejemplo.