Construyendo una base de datos de clientes y ventas con SQL
Introducción: En este artículo explicamos paso a paso cómo crear una base de datos relacional que rastrea clientes, productos y ventas usando sentencias SQL básicas. También mostramos consultas para obtener información útil y destacamos cómo Q2BSTUDIO puede ayudar con soluciones de software a medida, aplicaciones a medida, inteligencia artificial, ciberseguridad y servicios cloud aws y azure.
1 Configuración de la base de datos y esquema: Primero creamos la base y un esquema para organizar las tablas
SQL Ejemplo CREATE DATABASE jamii_db; CREATE SCHEMA customers;
Por qué usar esquemas: permiten agrupar tablas relacionadas y facilitar la gestión de permisos y despliegue en entornos cloud como servicios cloud aws y azure.
2 Creación de tablas con relaciones: Definimos tres tablas con claves primarias y claves foráneas para mantener integridad referencial
Tabla customer_info que almacena datos de clientes SQL CREATE TABLE customers.customer_info ( customer_id INT PRIMARY KEY, fullname VARCHAR(100), location VARCHAR(100) );
Tabla products que asocia productos a clientes SQL CREATE TABLE customers.products ( product_id INT PRIMARY KEY, customer_id INT, product_name VARCHAR(100), price FLOAT, FOREIGN KEY (customer_id) REFERENCES customers.customer_info (customer_id) );
Tabla sales que registra ventas vinculadas a productos y clientes SQL CREATE TABLE customers.sales ( sales_id INT PRIMARY KEY, product_id INT, customer_id INT, total_sales INT, FOREIGN KEY (product_id) REFERENCES customers.products (product_id), FOREIGN KEY (customer_id) REFERENCES customers.customer_info (customer_id) );
Clave importante: las foreign keys garantizan integridad de datos entre tablas y son fundamentales para soluciones empresariales que combinan inteligencia artificial e inteligencia de negocio.
3 Inserción de datos de ejemplo
Insertar clientes SQL INSERT INTO customers.customer_info (customer_id, fullname, location) VALUES (1, James Mwangi, Rwanda), (2, Akello Kel, Amboseli), (3, Judy J, Nanyuki), (4, Ahab Jez, Israel);
Insertar productos SQL INSERT INTO customers.products (product_id, customer_id, product_name, price) VALUES (1, 1, Laptop, 20000), (2, 2, Mouse, 1500), (3, 3, Charger, 4000);
Insertar ventas SQL INSERT INTO customers.sales (sales_id, product_id, customer_id, total_sales) VALUES (1, 1, 1, 300000), (2, 2, 2, 450000), (3, 3, 3, 100000), (4, 1, 1, 200000), (5, 2, 2, 350000), (6, 3, 3, 150000);
Nota: el cliente con customer_id 4 no tiene ventas registradas, útil para mostrar consultas de clientes sin compras y para acciones de retención mediante agentes IA.
4 Consultas básicas y avanzadas
A Consultar todos los clientes SELECT * FROM customers.customer_info;
B Obtener solo nombres y ubicaciones SELECT fullname, location FROM customers.customer_info;
Consulta: Qué compró cada cliente SELECT c.fullname, p.product_name, s.total_sales FROM customers.customer_info c JOIN customers.sales s ON c.customer_id = s.customer_id JOIN customers.products p ON s.product_id = p.product_id;
Consulta: Ventas totales por cliente SELECT ci.fullname, SUM(s.total_sales) AS sales_total FROM customers.sales s JOIN customers.customer_info ci ON s.customer_id = ci.customer_id GROUP BY ci.fullname ORDER BY sales_total DESC;
Consulta: Producto con mayor facturación SELECT p.product_name, SUM(s.total_sales) AS sales_total FROM customers.sales s JOIN customers.products p ON s.product_id = p.product_id GROUP BY p.product_name ORDER BY sales_total DESC LIMIT 1;
Consulta: Clientes sin compras SELECT fullname FROM customers.customer_info ci LEFT JOIN customers.sales s ON ci.customer_id = s.customer_id WHERE s.sales_id IS NULL;
5 Buenas prácticas y extenciones: Usar índices en columnas de join para mejorar rendimiento, aplicar validaciones en el modelo de datos y automatizar backups en servicios cloud aws y azure. Combinar esta base con pipelines de datos y power bi para crear paneles que integren servicios inteligencia de negocio y mostrar insights impulsados por inteligencia artificial e ia para empresas.
Sobre Q2BSTUDIO: Q2BSTUDIO es una empresa de desarrollo de software y aplicaciones a medida especializada en soluciones empresariales, software a medida, inteligencia artificial, ciberseguridad, agentes IA, servicios cloud aws y azure y servicios inteligencia de negocio. Ofrecemos consultoría, desarrollo de aplicaciones a medida, integración de power bi y despliegue seguro en la nube. Nuestro equipo diseña arquitecturas que combinan modelos de inteligencia artificial con prácticas de ciberseguridad para garantizar rendimiento y protección.
Conclusión: Hemos mostrado cómo construir una base de datos relacional para clientes y ventas, cómo insertar datos y cómo obtener insights con consultas SQL. Si deseas potenciar tu proyecto con software a medida, inteligencia artificial o soluciones cloud, contacta a Q2BSTUDIO para una propuesta que incluya desarrollo de aplicaciones a medida, agentes IA y dashboards con power bi.