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

Última actualización
21 Dec 2022
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
$ 417 MXN
(a meses sin intereses con tarjeta de crédito)
Costo por curso completo
$ 4,999 MXN
$ 8,332 MXN
Intégrate al curso
Comparte tu opinión
Notificar sobre comentarios

O como invitado

Suscribiete Suscribiete Suscribiete Suscribiete Suscribiete

Más artículos relacionados

¿Qué es HTML5 y para qué sirve?

En este artículo veremos las nuevas características y funciones de HTML5, la última versión de HTML, una tecnología fundamental para construir páginas en internet.

22 Mar 2023
4 min
Back End y Front End: en qué se diferencian y cuál es mejor

Back End Vs Front End: como elegir uno y no arrepentirse.

22 Mar 2023
7 min
22 Mar 2023
7 min
Ciclos en Python: cómo funcionan los bucles For y While y cómo hacerlos

En este artículo aprenderás lo esencial sobre los bucles For y While en Python, cómo funcionan y para qué sirven.

22 Mar 2023
7 min
Java o Python: ¿qué lenguaje de programación es mejor para aprender?

Python o Java: en un gran debate a nivel mundial cada desarrollador defiende su punto de vista.

07 Feb 2023
8 min
¿Qué es el desarrollo web y qué incluye?

Conviértete en un desarrollador web para estar en el tope de las profesiones con mayor demanda.

07 Feb 2023
7 min
¿Qué perfiles IT buscan las empresas?

La demanda de los especialistas en áreas tecnológicas sigue superando la oferta, convirtiendo el sector IT en un sector sin desempleo.

06 Feb 2023
8 min