--TABLAS
CREATE TABLE clientes (
id_cliente INTEGER PRIMARY KEY,
nombre TEXT,
ciudad TEXT
);
CREATE TABLE productos (
id_producto INTEGER PRIMARY KEY,
nombre TEXT,
precio REAL --REAL es el tipo de moneda, puede ser también $
);
CREATE TABLE pedidos (
id_pedido INTEGER PRIMARY KEY,
id_cliente INTEGER,
fecha TEXT,
FOREIGN KEY (id_cliente) REFERENCES clientes(id_cliente)
);
CREATE TABLE detalle_pedido (
id_detalle INTEGER PRIMARY KEY,
id_pedido INTEGER,
id_producto INTEGER,
cantidad INTEGER,
FOREIGN KEY (id_pedido) REFERENCES pedidos(id_pedido),
FOREIGN KEY (id_producto) REFERENCES productos(id_producto)
);
--INSERTS
INSERT INTO clientes VALUES
(1, 'Ana', 'La Paz'),
(2, 'Luis', 'Cochabamba'),
(3, 'Sofía', 'Santa Cruz');
INSERT INTO productos VALUES
(1, 'Leche', 8.50),
(2, 'Pan', 2.00),
(3, 'Arroz', 12.00),
(4, 'Coca Cola', 10.00);
INSERT INTO pedidos VALUES
(1, 1, '2026-05-23'),
(2, 2, '2026-05-23');
INSERT INTO detalle_pedido VALUES
(1, 1, 1, 2),
(2, 1, 2, 5),
(3, 2, 4, 1);
--CONSULTAS
-- Ver todos los datos dentro de las tablas
SELECT * FROM clientes;
SELECT * FROM productos;
--Ver un dato especifico de una tabla
--Nombre de los productos
SELECT nombre FROM productos;
--Ver preducto mayor a n precio
SELECT * FROM productos WHERE precio > 5;
--Ver cliente que se encuentre en x ciudad
SELECT * FROM clientes WHERE ciudad = 'La Paz';
--Ordena la tabla de forma descentente/ascendente según el precio
SELECT * FROM productos ORDER BY precio DESC;
SELECT * FROM productos ORDER BY precio ASC;
--Ver cantidades mayor que que n.
SELECT * FROM pedidos;
SELECT * FROM detalle_pedido WHERE cantidad > 1;
--Visualizar n columnas
SELECT nombre, precio FROM productos;
--Contar cantidad de filas
SELECT COUNT(*) FROM clientes;
-- Unir tablas con JOIN
SELECT clientes.nombre, pedidos.fecha -- que quiero ver
FROM clientes -- de que tabla sale
JOIN pedidos -- unir otra tabla
ON Clientes.id_cliente = pedidos.id_cliente; --como se conectan
To embed this project on your website, copy the following code and paste it into your website's HTML: