← SQL EspañolChapter 02 of 13

Consultas Básicas

## Objetivos de Aprendizaje - Dominar las sentencias SELECT - Usar alias de columnas - Realizar operaciones aritméticas en consultas - Entender DISTINCT y ALL ## La Sentencia SELECT ### Seleccionar Todas las Columnas ```sql SELECT * FROM employees; ``` ### Seleccionar Columnas Específicas ```sql SELECT first_name, last_name, salary FROM employees; ``` ### Orden de Columnas ```sql SELECT last_name, first_name, salary FROM employees; ``` ## Alias de Columnas ### Palabra Clave AS ```sql SELECT first_name AS "First Name", last_name AS "Last Name", salary AS "Annual Salary" FROM employees; ``` ### Sin AS ```sql SELECT first_name "First Name", salary * 12 "Annual Total" FROM employees; ``` ## Operaciones Aritméticas ```sql SELECT first_name, salary, salary * 12 AS annual_salary, salary / 12 AS monthly_salary, salary + 1000 AS raise FROM employees; ``` ### Operadores | Operador | Descripción | |----------|-------------| | + | Suma | | - | Resta | | * | Multiplicación | | / | División | | % | Módulo (resto) | ### Consideraciones de División ```sql -- División entera en algunas bases de datos SELECT 10 / 3; -- Devuelve 3 en SQL Server, 3.333 en MySQL -- Usar decimal para precisión SELECT CAST(10 AS FLOAT) / 3; ``` ## Concatenación de Cadenas ### SQL Server ```sql SELECT first_name + ' ' + last_name AS full_name FROM employees; ``` ### MySQL ```sql SELECT CONCAT(first_name, ' ', last_name) AS full_name FROM employees; ``` ### PostgreSQL / SQLite ```sql SELECT first_name || ' ' || last_name AS full_name FROM employees; ``` ## Valores NULL ### ¿Qué es NULL? NULL representa datos faltantes o desconocidos. ```sql -- Empleados sin email SELECT first_name, email FROM employees WHERE email IS NULL; ``` ### NULL en Cálculos ```sql -- Cualquier aritmética con NULL devuelve NULL SELECT salary + bonus FROM employees; -- Si bonus es NULL, el resultado es NULL ``` ### Manejo de NULL ```sql -- COALESCE devuelve el primer valor no-NULL SELECT first_name, COALESCE(bonus, 0) AS bonus FROM employees; ``` ## DISTINCT ### Eliminar Duplicados ```sql SELECT DISTINCT department FROM employees; ``` ### Múltiples Columnas ```sql SELECT DISTINCT department, city FROM employees; ``` ## Palabra Clave ALL ```sql -- Comportamiento por defecto SELECT ALL salary FROM employees; -- Es lo mismo que SELECT salary FROM employees; ``` ## Expresiones ### Expresiones de Columna ```sql SELECT first_name, last_name, salary * 1.10 AS new_salary FROM employees; ``` ### WHERE con Expresiones ```sql SELECT first_name, salary, salary * 12 AS annual FROM employees WHERE salary * 12 > 50000; ``` ## LIMIT / TOP ### MySQL / PostgreSQL / SQLite ```sql SELECT * FROM employees LIMIT 10; ``` ### Cláusula TOP (SQL Server) ```sql SELECT TOP 10 * FROM employees; ``` ### Con OFFSET (Paginación) ```sql -- MySQL / PostgreSQL SELECT * FROM employees LIMIT 10 OFFSET 20; -- SQL Server SELECT * FROM employees ORDER BY employee_id OFFSET 20 ROWS FETCH NEXT 10 ROWS ONLY; ``` ## Resumen - `SELECT *` recupera todas las columnas - Usa alias con `AS` para nombres de columnas legibles - Los operadores aritméticos funcionan en sentencias SELECT - La concatenación de cadenas varía según la base de datos - NULL representa datos faltantes; usa `IS NULL` / `IS NOT NULL` - `DISTINCT` elimina filas duplicadas - `LIMIT` / `TOP` limita el número de filas devueltas

Comments

Comments powered by Giscus

To enable comments, add your Giscus embed code here.

Learn more about Giscus →