Consulta de datos utilizando la cláusula SELECT

Consulta de datos utilizando la cláusula SELECT

Hola, ¿cómo están? ¡Bienvenidos! Dando continuidad al curso de MySQL 8; hoy veremos lo que son la consulta de datos utilizando la cláusula SELECT en MySQL.

¡Empecemos!

¿Qué es cláusula SELECT?

La instrucción de selección SELECT es una forma habitual de recuperar información procesada de una base de datos relacional. Es una de las cláusulas más importantes y fundamentales en el lenguaje de consultas estructuradas (SQL) y se utiliza principalmente para realizar consultas y extraer información específica de una o varias tablas en una base de datos.

Sintaxis de la instrucción SELECT

La sintaxis básica de la cláusula SELECT es la siguiente:

SELECT columna1, columna2, ..., columnaN FROM nombre_tabla;

Existen varias estructuras asociadas a la consulta SELECT, y su uso depende mucho de la información que se desea obtener de una base de datos. Las sintaxis de una consulta SELECT pueden ser desde las más básicas hasta las más complejas, utilizando instrucciones como WHERE, ORDER BY, GROUP BY, HAVING, JOIN, UNION, etc.

Una sintaxis más completa de la cláusula SELECT es la siguiente:

SELECT [ ALL / DISTINC ] [ * ] / [Lista_Columnas] AS [Expresion]
FROM Nombre_Tabla
WHERE Condiciones
ORDER BY Lista_Columnas [ ASC | DESC ]

Una sintaxis más compleja de una cláusula SELECT es la siguiente:

SELECT [ ALL / DISTINC ] [ * ] / [Lista_Columnas] AS [Expresion]
FROM Nombre_Tabla
WHERE Condiciones [AND | OR]
GROUP BY Nombre_Campo
HAVING Condicion[ AND|OR]
ORDER BY Lista_Columnas [ ASC | DESC ]

Ejemplos de sentencias SELECT

Antes de comenzar a realizar consultas a la base de datos, ingresaremos más datos a la tabla “Clientes” y “Servicios” con las siguientes consultas:

INSERT INTO clinica_veterinaria.clientes (`nombre`, `apellido`, `zona`, `direccion`, `telefono`) values ('Ana Maria', 'Villca', 'Zona Central', 'Libertador #142', '767721111');
INSERT INTO clinica_veterinaria.clientes (`nombre`, `apellido`, `zona`, `direccion`, `telefono`) values ('Juan', 'Marc', 'Zona Cartagena', 'Miraflores #222', '7677333333');
INSERT INTO clinica_veterinaria.clientes (`nombre`, `apellido`, `zona`, `direccion`, `telefono`) values ('Hugo', 'Zoto', 'Zona Cartagena', 'Cartagena s/n', '7677444444');
INSERT INTO clinica_veterinaria.clientes (`nombre`, `apellido`, `zona`, `direccion`, `telefono`) values ('Bertha', 'Hernandez', 'Zona Rosales', 'De la rosa #144', '67676666777');
INSERT INTO clinica_veterinaria.clientes (`nombre`, `apellido`, `zona`, `direccion`, `telefono`) values ('Jordy', 'Mane', 'Zona Central', 'Libertador #12333', '7677773333');
INSERT INTO clinica_veterinaria.clientes (`nombre`, `apellido`, `zona`, `direccion`, `telefono`) values ('Carla', 'Oropeza Delgado', 'Zona Rosales', 'Junion #12244', '767711111');
INSERT INTO clinica_veterinaria.clientes (`nombre`, `apellido`, `zona`, `direccion`, `telefono`) values ('Maria', 'Delgado Miral', 'Zona Central', 'Libertador #144', '7644442233');
INSERT INTO clinica_veterinaria.clientes (`nombre`, `apellido`, `zona`, `direccion`, `telefono`) values ('Marco', 'Mane', 'Zona Central', 'Libertador #12333', '767722222221');
INSERT INTO clinica_veterinaria.clientes (`nombre`, `apellido`, `zona`, `direccion`, `telefono`) values ('Juan Manuel Mike', 'Dias Soliz', 'Zona Cartagena', 'Miraflores #144', '761111332233');
INSERT INTO clinica_veterinaria.clientes (`nombre`, `apellido`, `zona`, `direccion`, `telefono`) values ('Daniela', 'del Castillo', 'Zona Cartagena', 'Pasifico #55776', '');

En la tabla “Servicios”

INSERT INTO clinica_veterinaria.servicios (`nombre`, `costo`, `detalle`) values ('Transporte', 50.00, '');
INSERT INTO clinica_veterinaria.servicios (`nombre`, `costo`, `detalle`) values ('Estética y Spa', 150.00, '');
INSERT INTO clinica_veterinaria.servicios (`nombre`, `costo`, `detalle`) values ('Guardería', 30.00, '');
INSERT INTO clinica_veterinaria.servicios (`nombre`, `costo`, `detalle`) values ('Vacunas', 15.00, '');
INSERT INTO clinica_veterinaria.servicios (`nombre`, `costo`, `detalle`) values ('Curaciones', 75.00, '');

Consultas básicas SELECT

Por ejemplo, quiero obtener todos los datos de la tabla “Clientes”:

SELECT * FROM clinica_veterinaria.clientes;

Veamos otro ejemplo, quiero obtener los nombre y apellidos de todos los clientes:

SELECT clinica_veterinaria.clientes.nombre, clinica_veterinaria.clientes.apellido FROM clinica_veterinaria.clientes;

Cláusula WHERE

Las consultas SELECT con cláusula WHERE son instrucciones en SQL que permiten recuperar datos específicos de una base de datos mediante la aplicación de condiciones o filtros. Por ejemplo, quiero obtener los datos de la tabla “Clientes” en la que el “Id” del cliente es igual a 3.

SELECT * FROM clinica_veterinaria.clientes WHERE clinica_veterinaria.clientes.id = 3;

Veamos otro ejemplo, en el caso que se quiera obtener los datos de la tabla “Clientes” en la que el  apellido sea igual a “Mane”.

SELECT * FROM clinica_veterinaria.clientes WHERE clinica_veterinaria.clientes.apellido = 'Mane';

También se puede añadir la sentencia LIKE a la consulta para buscar coincidencias; por ejemplo, quiero obtener los datos de la tabla “Clientes” en la que el nombre coincida con “Maria”.

SELECT * FROM clinica_veterinaria.clientes WHERE clinica_veterinaria.clientes.nombre LIKE '%maria%';

Cláusula ORDER BY

De igual forma, se puede añadir la sentencia ORDER BY a la consulta, a fin de ordenar los elementos de la consulta. Por ejemplo, quiero obtener todos los datos de la tabla “Clientes” ordenados de manera ascendente por su nombre.

SELECT * FROM clinica_veterinaria.clientes ORDER BY clinica_veterinaria.clientes.nombre ASC;

Asimismo, se puede añadir la sentencia WHERE para obtener todos los datos de la tabla “Clientes” en la que el campo zona coincida con “central”; los datos aparecerán ordenados de manera ascendente por apellido.

SELECT * FROM clinica_veterinaria.clientes WHERE clinica_veterinaria.clientes.zona like "%central%" ORDER BY clinica_veterinaria.clientes.apellido ASC;

Para ver los resultados de las consultas SELECT podemos utilizar la herramientas de MySQL Workbench.

Consultas select en mysql workbench

De esta manera hemos echado un vistazo a ¿Cómo realizar consultas SELECT?. En el futuro, continuaremos practicando con consultas SELECT más complejas, lo que nos permitirá explorar todas las posibilidades que ofrece esta instrucción para recuperar y analizar datos de manera eficiente y precisa. 

En la siguiente clase veremos Operadores Relacionales SQL.

¡Te espero en la próxima!

Saludos y éxitos

Victor Peña

Victor Peña

Desarrollador de software Backend Developer, experto en Laravel Framework, PHP, JavaScript y MySQL. Creador de contenidos de emprendimiento y desarrollo de software.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *