0% encontró este documento útil (0 votos)
9 vistas8 páginas

Consultas Básicas

El documento proporciona una guía sobre consultas SQL básicas, incluyendo cláusulas como SELECT, WHERE, HAVING, y operadores lógicos y de comparación. También se describen funciones de agregación, control de flujo, y de manipulación de cadenas y fechas. Finalmente, se abordan consultas combinadas mediante INNER JOIN, LEFT JOIN y RIGHT JOIN.

Cargado por

dlnatalia20sep
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
9 vistas8 páginas

Consultas Básicas

El documento proporciona una guía sobre consultas SQL básicas, incluyendo cláusulas como SELECT, WHERE, HAVING, y operadores lógicos y de comparación. También se describen funciones de agregación, control de flujo, y de manipulación de cadenas y fechas. Finalmente, se abordan consultas combinadas mediante INNER JOIN, LEFT JOIN y RIGHT JOIN.

Cargado por

dlnatalia20sep
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

CONSULTAS BÁSICAS — — — — — — —

CLÁUSULAS
1. CLÁUSULA SELECT / FROM → Seleccionar columnas y datos específicos de una tabla.
SELECT columna1, columna2
FROM tabla;

2. CLÁUSULA WHERE → Filtra filas que cumplen una condición.


SELECT columna1
FROM tabla
WHERE columna2 > 10;

3. CLÁUSULA HAVING → Filtra resultados después de realizar una agrupación (GROUP BY).
SELECT columna1, COUNT(*)
FROM tabla
GROUP BY columna1
HAVING COUNT(*) > 5;

4. CLÁUSULA ORDER BY → Organiza los resultados, ascendente (ASC) o descendente (DESC).


SELECT columna1
FROM tabla
ORDER BY columna1 ASC;

5. CLÁUSULA GROUP BY → Agrupa filas que tienen valores similares en una columna.
SELECT columna1, COUNT(*)
FROM tabla
GROUP BY columna1;

6. CLÁUSULA LIMIT → Restringe la cantidad de filas devueltas.


SELECT *
FROM tabla
LIMIT 5;

7. CLÁUSULA DISTINCT → Elimina los valores repetidos de una tabla


SELECT DISTINCT columna1, columna2, ...
FROM tabla;
OPERADORES LÓGICOS Y DE COMPARACIÓN
Operadores Lógicos

1. OPERADOR AND → Combina condiciones y devuelve TRUE si todas son verdaderas.


SELECT *
FROM empleados
WHERE edad > 30 AND salario > 50000;

2. OPERADOR OR → Combina condiciones y devuelve TRUE si al menos una es verdadera.


SELECT *
FROM empleados
WHERE edad > 30 OR salario > 50000;

3. OPERADOR NOT → Niega una condición. Devuelve TRUE si la condición es falsa.


SELECT *
FROM empleados
WHERE NOT (edad > 30);

Operadores de Comparación

1. OPERADOR = (Igual a)
SELECT *
FROM empleados
WHERE salario = 50000;

2. OPERADOR <> (Distinto de)


SELECT *
FROM empleados
WHERE salario != 50000

3. OPERADOR < (Menor que) | <= (Menor o igual a)


SELECT *
FROM empleados
WHERE edad < 30;

4. OPERADOR > (Mayor que) | >= (Mayor o igual a)


SELECT *
FROM empleados
WHERE edad > 30;
Otros Operadores

1. OPERADOR BETWEEN → Comprueba si un valor está dentro de un rango específico, incluyendo


los límites.
SELECT *
FROM empleados
WHERE edad BETWEEN 25 AND 35;

2. OPERADOR IN → Comprueba si un valor coincide con cualquiera de los valores de una lista.
SELECT *
FROM empleados
WHERE departamento IN ('Ventas', 'Marketing', 'Finanzas');

3. OPERADOR LIKE → Busca coincidencias basadas en patrones simples, empleando los caracteres
comodín:

●​ %: Representa cero o más caracteres.


●​ _: Representa un único carácter.

SELECT columna
FROM tabla
WHERE columna LIKE 'patrón';

4. OPERADOR RLIKE → Busca coincidencias más complejas utilizando expresiones regulares.

●​ ^: Comienza con.
●​ $: Termina con.
●​ .: Representa cualquier carácter.
●​ []: Define un conjunto de caracteres.
●​ (): Marca una cadena de caracteres.
●​ {,}: Número de veces que se repite un carácter.
●​ |: Representa una opción (OR).
●​ *: Repite cero o más veces.
●​ +: Repite una o más veces.
●​ ?: El carácter anterior puede obtener cualquier valor, incluso no estar.

SELECT columna
FROM tabla
WHERE columna RLIKE 'expresión_regular';
5. OPERADOR IS NULL → Verifica si un valor es NULL.
SELECT *
FROM empleados
WHERE salario IS NULL;

6. OPERADOR IS NOT NULL → Verifica si un valor no es NULL.


SELECT *
FROM empleados
WHERE salario IS NOT NULL;

FUNCIONES DE AGREGACIÓN
Principales funciones de agregación:

Función Descripción

COUNT Cuenta el número de filas.

SUM Suma los valores de una columna.

AVG Calcula el promedio de los valores.

MAX Devuelve el valor máximo.

MIN Devuelve el valor mínimo.

Contar el número de empleados:​


SELECT COUNT(*) AS total_empleados
FROM empleados;

Calcular el salario promedio:​


SELECT AVG(salario) AS salario_promedio
FROM empleados;

Obtener el salario más alto y más bajo:​


SELECT MAX(salario) AS salario_maximo, MIN(salario) AS salario_minimo
FROM empleados;

Calcular la suma total de ventas:​


SELECT SUM(total_venta) AS total_ventas
FROM ventas;
FUNCIONES SQL
Funciones de Control de Flujo

1. FUNCIÓN IS → Evalúa una condición y devuelve un valor si la condición es verdadera y otro valor
si es falsa.
IF(condición, valor_si_verdadero, valor_si_falso)

SELECT nombre, IF(salario > 50000, 'Alto', 'Bajo') AS categoria_salario


FROM empleados;

2. FUNCIÓN ISNULL → Reemplaza un valor NULL con otro especificado. Es útil para evitar
resultados nulos en consultas.
IFNULL(expresión, valor_por_defecto)

SELECT nombre, IFNULL(salario, 0) AS salario_corregido


FROM empleados;

Funciones de Caracteres

1. FUNCIÓN CHAR_LENGTH → Obtener la longitud de una cadena en términos del número de


caracteres que contiene.
CHAR_LENGTH(cadena)
SELECT CHAR_LENGTH('Hola Mundo') AS longitud;

2. FUNCIÓN CONCAT → Concatenar (unir) dos o más cadenas de texto. Este método es útil cuando
deseas combinar varias columnas o valores literales en una sola cadena.
CONCAT(cadena1, cadena2, ..., cadenaN)
SELECT CONCAT(nombre, ' ', apellido) AS nombre_completo
FROM empleados;

Resultado: Si un empleado tiene el nombre "Juan" y el apellido "Pérez", el resultado será Juan Pérez.

3. FUNCIÓN INSTR → Localiza la posición de una subcadena dentro de una cadena.


INSTR(cadena_principal, subcadena)

SELECT INSTR('Hola Mundo', 'Mundo') AS posición;

4. FUNCIÓN LOWER → Realizar comparaciones insensibles a minúsculas.


SELECT LOWER(nombre) AS “nombre minúsculas”
FROM empleados;
5. FUNCIÓN UPPER → Realizar comparaciones insensibles a mayúsculas
SELECT UPPER(nombre) AS “nombre mayusculas”
FROM empleados;

6. FUNCIÓN RTRIM → Eliminar los espacios en blanco que se encuentran al final (derecha) de una
cadena de texto.

RTRIM(cadena)
SELECT RTRIM('Hola Mundo ') AS resultado;

7. FUNCIÓN SUBSTR → Extraer una subcadena de una cadena dada, empezando en una posición
específica y, opcionalmente, extrayendo un número determinado de caracteres.

SUBSTR(cadena, inicio [, longitud])


SELECT SUBSTR('Hola Mundo', 6, 5) AS resultado;

Funciones numéricas

1. FUNCIÓN ROUND → Redondea un número a un número especificado de decimales según las


reglas de redondeo estándar.

ROUND(número, decimales)

●​ número: El número que deseas redondear.


●​ decimales: El número de decimales al que se desea redondear (puede ser positivo o negativo).

SELECT ROUND(123.456, 2); → Resultado: 123.46

2. FUNCIÓN TRUNCATE → Corta el número en un número especificado de decimales sin redondear.

TRUNCATE(número, decimales)

●​ número: El número que deseas truncar.


●​ decimales: El número de decimales a mantener (puede ser positivo o negativo).

SELECT TRUNCATE(123.456, 2); → Resultado: 123.45

3. FUNCIÓN ABS → Devuelve el valor no negativo de un número, eliminando su signo si es negativo.


ABS(número)

●​ número: Es el valor del que deseas obtener el valor absoluto. Puede ser un número entero,
decimal, o incluso una expresión matemática.

SELECT ABS(-10); → Resultado: 10


Funciones de Fecha y Hora

1.​ CURDATE() → Devuelve la fecha actual sin la hora. →


○​ SELECT CURDATE();

2.​ DATE() → Extrae solo la fecha de un valor DATETIME →


○​ SELECT DATE(NOW());

3.​ YEAR(), MONTH(), DAY() → Extraen el año, mes, o día de una fecha.
○​ SELECT YEAR('2025-01-14')
○​ SELECT MONTH('2025-01-14')
○​ SELECT DAY('2025-01-14');

4.​ DATE_ADD() y DATE_SUB() → Para sumar o restar días, meses, o años a una fecha.
○​ SELECT DATE_ADD('2025-01-14', INTERVAL 10 DAY);
○​ SELECT DATE_SUB('2025-01-14', INTERVAL 1 MONTH);

5.​ DATEDIFF() → Calcula la diferencia entre dos fechas en días. →


○​ SELECT DATEDIFF('2025-01-14', '2025-01-01');

6.​ MONTHNAME() → Pone el nombre de los meses →


○​ SELECT MONTHNAME(fecha);

7.​DATE_FORMAT() → Devuelve la fecha formateada según el formato →


○​ SELECT DATE_FORMAT(fecha, ‘%d %m %Y’);

Funciones de Conversión

1. FUNCIÓN CAST() → Convertir un valor de un tipo de datos a otro especificado.

CAST(expresión AS tipo_de_dato)

●​ expresión: El valor o columna que deseas convertir.


●​ tipo de dato: El tipo de dato al que deseas convertir la expresión.

Supongamos que tienes una columna precio de tipo VARCHAR y deseas convertir en DECIMAL:

SELECT CAST(precio AS DECIMAL(10, 2)) AS precio_decimal


FROM productos;
2. FUNCIÓN CONVERT() → Convierte un valor de un tipo de datos a otro. Es similar a CAST(), pero
su sintaxis es ligeramente diferente.

CONVERT(expresión, tipo_de_dato)

Supón que tienes una columna fecha_texto que contiene una cadena y deseas convertirla a un tipo
de dato DATE:

SELECT CONVERT(fecha_texto, DATE) AS fecha_convertida


FROM eventos;

CONSULTAS COMBINADAS

1. FUNCIÓN INNER JOIN → Devuelve sólo las filas que tienen coincidencias en ambas tablas.
SELECT columnas
FROM tabla1 INNER JOIN tabla2 ON tabla1.PK = tabla2.PK;

2. FUNCIÓN LEFT JOIN → Devuelve todas las filas de la tabla de la izquierda y las filas coincidentes
de la tabla de la derecha. Si no hay coincidencia, se devuelven NULLs para las columnas de la tabla de
la derecha.
SELECT columnas
FROM tabla1 LEFT JOIN tabla2 ON tabla1.PK = tabla2.PK;

3. FUNCIÓN RIGHT JOIN → Devuelve todas las filas de la tabla de la derecha y las filas coincidentes
de la tabla de la izquierda. Si no hay coincidencia, se devuelven NULLs para las columnas de la tabla de
la izquierda.
SELECT columnas
FROM tabla1 RIGHT JOIN tabla2 ON tabla1.PK = tabla2.PK;

También podría gustarte