Structured Query Language (SQL)| Explicación Completa (Definición, uso, estructura y ejemplo con MySQL)
Tags: database, sql, development
Published: 2023-07-03 23:19:52

Structured Query Language (SQL)| Explicación Completa (Definición, uso, estructura y ejemplo con MySQL)

# Introducción

Hola buenas, mi nombre es Daniela Barazarte y te quiero dar la bienvenida a esta explicación completa sobre SQL. Esta explicación será intuitiva y simple así como todas las explicaciones que forman parte de #DetectaLaLogica.

Si prefieres los videos, aquí tienes un tutorial completo hecho por mí en YouTube, está en español pero también tiene subtítulos: https://youtu.be/Hjs-zGEQtg8

# <u>Teoría</u>
## Definición de cada palabra
**Structured Query Language (SQL) o Lenguaje Estructurado de Consultas**
- Language (Lenguaje): se refiere al conjunto de reglas y sintaxis que se utilizan para escribir programas que una computadora pueda entender. 
- Structured (Estructurado): significa organizar el código de un programa en piezas más pequeñas y lógicas, para que sea más fácil de entender y mantener.
- Query (Consulta): se refiere a una búsqueda específica de información en una base de datos.

## Definición completa
SQL es un lenguaje de programación que se utiliza para gestionar y manipular bases de datos relacionales y estructuradas mediante consultas.


![SQL Database](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/c4hlfjkg6gio7bbrut5t.png)

## #DetectaLaLógica
SQL se dice Structured Query Language (Lenguaje estructurado de consultas) pues literalmente es un lenguaje que nos permite hacer consultas a una base de datos estructurada y obtener resultados

# <u>Uso</u>
## Para qué
Es utilizado para gestionar y manipular bases de datos relacionales, ya sea para crear, modificar, eliminar o ver tablas, objetos y registros en una base de datos

## Cuando y donde
- Sitios web de comercio electrónico
- Aplicaciones de gestión de contenido
- Aplicaciones de redes sociales
- Aplicaciones de análisis de datos
- Aplicaciones de gestión de proyectos
- Aplicaciones de reservas y citas

## Cómo
Necesitas un sistema de gestión de bases de datos relacionales que soporte SQL (MySQL, Oracle, Microsoft SQL Server, etc.)  Luego, debes utilizar los comandos

# <u>Práctica</u>
## Ejercicio
Tienes una aplicación web de una tienda en línea que vende productos electrónicos. Debes almacenar y gestionar la información de los pedidos.

### **Método: SQL**

```
-- Crear la tabla de pedidos
CREATE TABLE pedidos (
  id INT AUTO_INCREMENT PRIMARY KEY,
  cliente VARCHAR(50) NOT NULL,
  fecha DATE NOT NULL,
  producto VARCHAR(50) NOT NULL,
  cantidad INT NOT NULL,
  precio DECIMAL(10,2) NOT NULL
);

-- Crear pedidos
INSERT INTO pedidos (cliente, fecha, producto, cantidad, precio)
VALUES
  ('Juan Perez', '2023-06-16', 'Camisa roja', 2, 20.50),
  ('Ana Garcia', '2023-06-15', 'Pantalón azul', 1, 35.00),
  ('Luis Gomez', '2023-06-15', 'Vestido verde', 2, 40.00),
  ('Maria Hernandez', '2023-06-14', 'Calcetines de Bob Toronja', 12, 5.80),
  ('Carlos Rodriguez', '2023-06-14', 'Chaqueta para el frío', 1, 75.50),
  ('Laura Martinez', '2023-06-13', 'Blusa azul', 3, 30.20),
  ('Pedro Sanchez', '2023-06-13', 'Jeans de vaquero', 6, 50.00),
  ('Sofia Ramirez', '2023-06-12', 'Sudadera para el ejercicio', 2, 25.80),
  ('Diego Torres', '2023-06-12', 'Gorra de Cocodrilos', 1, 12.80),
  ('Fernanda Castro', '2023-06-11', 'Abrigo', 2, 90.00);

-- Leer todos los pedidos
SELECT * FROM pedidos;

-- Leer pedido por ID
SELECT * FROM pedidos WHERE id = 3;

-- Editar/Actualizar pedido
UPDATE pedidos SET cantidad = 4, precio = 80.00 WHERE id = 5;

-- Eliminar pedido
DELETE FROM pedidos WHERE id IN (2, 6, 8);
```

# Importancia
**SQL tiene varios beneficios:**

- Es fácil de aprender y usar.
- Es muy eficiente para manipular y acceder a datos.
- Es flexible y puede manejar tanto consultas simples como complejas.
- Es escalable, funciona con bases de datos pequeñas o muy grandes.
- Es un estándar de facto, ampliamente compatible entre diferentes sistemas de bases de datos.
- Una vez que lo dominas, puedes aplicar tus habilidades a múltiples plataformas de bases de datos.

# Despedida
(Recuerda) #DetectaLaLógica: SQL se dice Structured Query Language (Lenguaje estructurado de  consultas) pues literalmente es un lenguaje que nos permite hacer consultas a una base de datos estructurada y obtener resultados

Puedes practicar este tema en mi repositorio de GitHub (Código en lenguaje C#): https://github.com/danielabarazarte/DetectaLaLogica

Muchas gracias por leer, si tienes alguna duda puedes comentarla y también puedes seguirme para ver mas posts de este estilo, gracias <3.