Está en la página 1de 5

Ejercicios MS SQL

Primera Parte
Inserta un registro en la tabla "clientes" con el nombre "Juan Pérez", la dirección
"Calle 123" y el teléfono "555-1234".

INSERT INTO clientes (nombre, direccion, telefono) VALUES ('J

Actualiza el registro con el ID 1 para que el teléfono sea "555-5678".

UPDATE clientes SET telefono = '555-5678' WHERE id = 1;

Elimina el registro con el ID 1 de la tabla "clientes".

DELETE FROM clientes WHERE id = 1;

Inserta varios registros en la tabla "productos" utilizando una sola consulta.

INSERT INTO productos (nombre, precio)


VALUES
('Producto 1', 10.99),
('Producto 2', 19.99),
('Producto 3', 5.99);

Actualiza el precio del producto con el ID 2 a 24.99.

UPDATE productos SET precio = 24.99 WHERE id = 2;

Elimina todos los productos con un precio menor o igual a 5.

DELETE FROM productos WHERE precio <= 5;

Inserta un registro en la tabla "pedidos" con el ID del cliente 1 y el ID del producto 2.

Ejercicios MS SQL 1
INSERT INTO pedidos (cliente_id, producto_id) VALUES (1, 2);

Actualiza el ID del cliente del pedido con ID 1 a 2.

UPDATE pedidos SET cliente_id = 2 WHERE id = 1;

Elimina todos los pedidos del producto con ID 3.

DELETE FROM pedidos WHERE producto_id = 3;

Actualiza la cantidad del pedido con ID 2 a 3.

UPDATE pedidos SET cantidad = 3 WHERE id = 2;

Segunda Parte
Selecciona todos los registros de la tabla "clientes".

SELECT * FROM clientes;

Selecciona el nombre y la dirección de todos los clientes que tengan un teléfono que
comience con "555".

SELECT nombre, direccion FROM clientes WHERE telefono LIKE '55

Selecciona el nombre, precio y la mitad del precio de todos los productos.

SELECT nombre, precio, precio/2 AS mitad_precio FROM producto

Selecciona el nombre y la cantidad de cada producto que tenga una cantidad mayor
o igual a 5.

SELECT nombre, cantidad FROM productos WHERE cantidad >= 5;

Selecciona el nombre y la cantidad de cada producto que tenga una cantidad menor
o igual a 2 o un precio mayor o igual a 10.

Ejercicios MS SQL 2
SELECT nombre, cantidad FROM productos WHERE cantidad <= 2 OR

Selecciona el nombre y el precio del producto más caro.

SELECT TOP 1 nombre, precio FROM productos ORDER BY precio DES

Selecciona el nombre y el precio promedio de todos los productos.

SELECT nombre, AVG(precio) AS precio_promedio FROM productos G

Selecciona el nombre y el número de pedidos de cada producto.

SELECT p.nombre, COUNT(*) AS num_pedidos FROM productos p


JOIN pedidos pd ON p.id = pd.producto_id
GROUP BY p.nombre;

Selecciona el nombre y el número de pedidos de cada cliente.

SELECT c.nombre, COUNT(*) AS num_pedidos FROM clientes c


JOIN pedidos pd ON c.id = pd.cliente_id
GROUP BY c.nombre;

Selecciona el nombre y la cantidad total vendida de cada producto.

SELECT p.nombre, SUM(pd.cantidad) AS cantidad_vendida FROM pro


JOIN pedidos pd ON p.id = pd.producto_id
GROUP BY p.nombre;

Tercera Parte
Selecciona el nombre y la edad de todos los empleados que tengan más de 30
años.

SELECT nombre, edad FROM empleados WHERE edad > 30;

Selecciona el nombre y la fecha de nacimiento de todos los clientes que hayan

Ejercicios MS SQL 3
nacido después del 1 de enero de 1990.

SELECT nombre, fecha_nacimiento FROM clientes WHERE fecha_naci

Selecciona el nombre, la cantidad y el precio de todos los productos, ordenados por


precio descendente.

SELECT nombre, cantidad, precio FROM productos ORDER BY precio

Selecciona el nombre y la cantidad de todos los productos cuyo nombre contenga la


palabra "leche".

SELECT nombre, cantidad FROM productos WHERE nombre LIKE '%lec

Selecciona el nombre y el precio de todos los productos cuyo precio sea mayor que
la mitad del precio promedio de todos los productos.

SELECT nombre, precio FROM productos WHERE precio > (SELECT AV

Selecciona el nombre y el número de pedidos de cada cliente, solo para los clientes
que tengan más de 3 pedidos.

SELECT c.nombre, COUNT(*) AS num_pedidos FROM clientes c


JOIN pedidos pd ON c.id = pd.cliente_id
GROUP BY c.nombre
HAVING COUNT(*) > 3;

Selecciona el nombre y la cantidad total vendida de cada producto, solo para los
productos que hayan vendido más de 50 unidades.

SELECT p.nombre, SUM(pd.cantidad) AS cantidad_vendida FROM pro


JOIN pedidos pd ON p.id = pd.producto_id

Ejercicios MS SQL 4
GROUP BY p.nombre
HAVING SUM(pd.cantidad) > 50;

Selecciona el nombre y la cantidad disponible de cada producto que tenga más de


10 unidades disponibles y cuyo precio sea menor que 10.

SELECT nombre, cantidad_disponible FROM productos WHERE cantid

Selecciona el nombre y el precio de todos los productos, solo para los productos que
tengan una cantidad disponible menor que la cantidad total vendida.

SELECT nombre, precio FROM productos p


JOIN (SELECT producto_id, SUM(cantidad) AS cantidad_total FROM
ON p.id = pd.producto_id
WHERE p.cantidad_disponible < pd.cantidad_total;

📔 Apuntes

Ejercicios MS SQL 5

También podría gustarte