¿Qué son las consultas SQL y cómo usarlas?

Última actualización
03 May 2023
Tiempo de lectura
6 min
Cómo crear y usar consultas SQL

Administra bases de datos relacionales mediante consultas en SQL.

SQL o lenguaje estructurado de consultas es un lenguaje de programación utilizado para gestionar las bases de datos. Las grandes compañías, como Uber, Facebook, Amazon, Microsoft, Netflix, Disney y McDonald ‘s, han creado sus bases de datos utilizando este lenguaje. La popularidad de SQL se debe al hecho de que el lenguaje cuenta con una herramienta eficaz para obtener, agregar, borrar o editar información, y esta herramienta se llama consultas.

¿Qué son las consultas SQL?

Un usuario y una base de datos pueden intercambiar información siempre y cuando “hablen” el mismo lenguaje. SQL funciona de manera no procedimental, es decir, el usuario debe especificar que quiere hacer mediante la consulta.

Las consultas se utilizan para extraer y manipular la información de una base de datos y especifican cómo se verá la tabla resultante. Una consulta es un componente de algunas sentencias de SQL.

Las sentencias de SQL se agrupan en los siguientes subconjuntos:

DDL (Lenguaje de definición de datos): Las sentencias DDL se usan para describir, definir y crear objetos dentro de una base de datos. Algunos comandos son:

  • Create: Crea tablas.
  • Alter: Modifica la estructura de una tabla, añade o elimina columnas, cambia títulos, etc.
  • Drop: Elimina objetos de la base de datos.
  • Truncate: Elimina todos los registros de una tabla.
  • Comment: Agrega comentarios al diccionario de datos.
  • Rename: Renombra objetos.

DML (Lenguaje de manipulación de datos): Las sentencias DML se aplican para gestionar información en una base de datos y permiten consultar, insertar, modificar y eliminar información almacenada en los objetos de la base de datos. Sus comandos son:

Fuente: Freepik

  • Insert: Carga datos a una tabla.
  • Update: Modifica valores de los campos.
  • Delete: Elimina registros de una tabla.
  • Select: Consulta registros de la base de datos que cumplan un criterio determinado.

DCL (Lenguaje de control de datos): Las secuencias DCL permiten controlar el acceso a la base de datos. Los comandos son:

  • Grant: Otorga acceso a un usuario a la base de datos.
  • Revoke: Retira acceso otorgado con el comando Grant.

TCL (Lenguaje de control de transacciones): Se usa para agrupar de manera lógica los cambios implementados en las transacciones DML. Tiene comandos como:

Fuente: Freepik

  • Commit: Finaliza la transacción en marcha.
  • Rollback: Aborta la transacción de manera repentina.
  • Savepoint: Identifica un punto de la transacción al que se puede retroceder posteriormente.

¿Cómo crear consultas en SQL?

Fuente: Freepik

El comando SELECT es el punto de inicio de todas las consultas. Úsalo para obtener cualquier tipo de información dentro de la base de datos.

Veamos un ejemplo de una consulta SQL tomando una base de clientes de una empresa que opera en América Central.

SELECT *
FROM CLIENTES

Con el * indicamos que queremos visualizar todos los campos de la tabla CLIENTES. Si CLIENTES cuenta con los campos: ID, nombre y dirección, lo anterior sin utilizar * sería equivalente a:

SELECT ID, nombre, dirección.
FROM CLIENTES
  • SELECT DISTINCT devuelve un subconjunto de los campos de una tabla:
SELECT DISTINCT CP, ciudad
FROM CLIENTES

Esta consulta devolverá únicamente los campos CP (Codigo postal) y ciudad de CLIENTES

Una vez identificado el comando SELECT, agrega cláusulas y operadores, que son instrucciones concretas o condiciones para definir los datos que te interesan.

Veamos algunas de ellas:

CLÁUSULAS

  • WHERE
    indica la condición que deben cumplir los registros de la tabla para ser devueltos.
SELECT numero, calle
FROM DIRECCIÓN
WHERE ciudad = ‘Puebla’

Esta consulta arroja el número y la calle de todas las direcciones pertenecientes a la ciudad de Puebla.

  • ORDER BY
    ordena según criterios ASC() (en el orden ascendente) o DESC() (en el orden descendente).
SELECT *
FROM CLIENTES
ORDER BY Nombre ASC.

Esta consulta devolverá todos los nombres de clientes ordenados alfabéticamente.

  • GROUP BY
    expresa consultas agrupadas.

Aquí se devuelve información que no proviene de un campo individual, sino del grupo de datos. Para ello, se emplean funciones de agregado tales como: COUNT(), MAX(), MIN(), SUM(), AVG(), y los datos se agrupan por algún criterio.

SELECT COUNT(ID cliente), país
FROM CLIENTES
GROUP BY país
  • COUNT
    enumera el total de clientes de un país determinado.
SELECT ID cliente, SUM (total gastado)
FROM CLIENTES
GROUP BY país
  • SUM
    puede sumar el total que cada cliente gasta en un país consultado.
SELECT ID cliente, AVG (total gastado)
FROM CLIENTES
GROUP BY país

Con la función AVG, se obtiene el promedio de gastos de un cliente en un país consultado.

SELECT ID cliente, MAX (total gastado)
FROM CLIENTES
GROUP BY país

Se usan MAX/MIN para consultar el gasto máximo o mínimo del cliente en un país consultado.

OPERADORES

Independientemente del signo = ‘_ ’ empleado anteriormente, puedes utilizar diversos operadores relacionales que te devolverán un valor lógico.

Operador Significado
< Arroja valores menores que la condición
> Arroja valores mayores que la condición.
<> Distinto de la condición especificada.
<= Menor o igual al valor especificado.
>= Mayor o igual al valor especificado.
= Igual al valor especificado.

 

Por ejemplo, para arrojar solo clientes menores o iguales a 32 años, se crea el siguiente comando:

SELECT nombre 
FROM CLIENTES 
WHERE edad <= 32

Adicionalmente, existen operadores de comparación que también muestran valores lógicos, es decir, verdaderos o falsos según si se cumplen o no las condiciones:

Operador Funcion
BETWEEN Específica un intervalo de valores.
LIKE Compara datos.
IN Específica registros en la base de datos.

 

Entonces, si solo necesitas ver clientes entre 20 y 35 años, usa el siguiente comando:

SELECT nombre
FROM CLIENTES
WHERE edad BETWEEN 20 AND 35

Puedes aplicar operadores lógicos para filtrar aún más la información de la base de datos.

Operador Significado
AND Cumple ambas condiciones.
OR Cumple una de las dos.
NOT No cumple ninguna.

 

Por ejemplo, filtra en tu base de datos por dirección que cumpla con las condiciones de ciudad y código postal.

SELECT *
FROM DIRECCIÓN
WHERE (ciudad = ‘Puebla’ AND cp = 41009) OR
(ciudad = ‘Jalisco’ AND (NOT cp = 14010))

Conclusión

SQL es uno de los lenguajes más usados a la hora de administrar y recuperar información de bases de datos relacionales. Existen comandos para crear, modificar y manipular el contenido de las mismas. Para manejar datos, una vez determinado el origen de la información mediante el comando SELECT, combina cláusulas, operadores y comandos en tu consulta para obtener la información ordenada.

Página de inicio / Programación & Data

SQL para analista y cientifico de datos

Aprende SQL en poco tiempo, el lenguaje de programación más utilizado para extraer y analizar información de bases de datos. Descubre cómo hacer consultas simples o complejas, y a modelar los datos estructurales de una empresa.

26 Dec 2022
2 meses
12x de
$ 511,67 MXN
a meses sin intereses con tarjeta de crédito
Precio total
$ 6.140 MXN
$ 12.277 MXN
Inscríbete al curso
Comparte tu opinión
Recibir notificaciones de otros comentarios

O como invitado

Suscribiete Suscribiete Suscribiete Suscribiete Suscribiete

Más artículos relacionados

22 Oct 2023
8 min
Bill Gates: La mente maestra detrás de Microsoft

Descubre cómo la increíble visión de Bill Gates transformó la tecnología para siempre.

22 Oct 2023
8 min
21 Sep 2023
8 min
¿Qué es DevOps?

Conoce el concepto de DevOps, cómo funciona y qué beneficios trae la cooperación de diferentes equipos IT.

21 Sep 2023
8 min
21 Sep 2023
7 min
Ada Lovelace: La vida y descubrimientos de la hija de lord Byron

Descubre cómo la hija de lord Byron marcó un hito en la historia de la programación.

21 Sep 2023
7 min
21 Sep 2023
7 min
¿Qué es el internet de las cosas?

Aprende cómo funciona la tecnología IoT, dónde se usa, cuáles son sus beneficios y posibles riesgos.

21 Sep 2023
7 min
21 Sep 2023
5 min
¿Qué es un objeto en programación?

Conoce el concepto del objeto en programación y aprende a crear uno para tu programa.

21 Sep 2023
5 min
21 Sep 2023
6 min
Frameworks: Marcos de trabajo para programadores

Descubre cómo puedes facilitar el desarrollo de una aplicación usando frameworks.

21 Sep 2023
6 min