Codea Blog  

Blog Details

APLICACIÓN DE QUERIES Y SUBQUERIES EN UNA DB DE CAMIÓN

I. INTRODUCCIÓN

En la industria minera, donde la gestión eficiente de datos es esencial para impulsar operaciones seguras y productivas, las bases de datos juegan un papel insustituible. Desde el seguimiento de la fragmentación del minerales hasta la disponibilidad de equipos y la planificación estratégica, el acceso a información precisa y oportuna es la clave del éxito. En este contexto, las consultas y subconsultas en SQL son una herramientas fundamental que permiten a los profesionales de la minería acceder a datos específicos que pueden ser enlazados con visualizados como Power BI para realizar análisis detallados para identificar tendencias y tomar decisiones informadas.

Por ello, el presente artículo tiene la finalidad de adentrarnos en la estructura y el funcionamiento de las consultas y subconsultas en SQL, también explicar el uso de las cláusulas WHERE, ORDER BY, GROUP BY y otros operadores matemáticos. Para el desarrollo de los ejemplos se usara una base de datos llamada “DB-CAMION” que contiene información del tonelaje cargado de los camiones en diferentes ciclos.

 

Queries: https://drive.google.com/file/d/1zjoqd4-W-MAgOPaV0zl3zeiAG_NAWK7s/view?usp=share_link

DB_camion: https://drive.google.com/file/d/1vFMa9XNYKSmFPjsk9pfv8Dx1B7f9mfCi/view?usp=sharing


II. CONCEPTOS BÁSICOS DE SQL

2.1. BASE DE DATOS

Es un conjunto organizado de datos que se almacena sistemáticamente y al cual se puede acceder posteriormente de manera estructurada.

La información almacenada en una base de datos puede ser de cualquier indole pero usualmente pertenecen a un mismo contexto. Además puede variar en tamaño, desde pequeñas bases de datos personales hasta enormes sistemas de gestión de bases de datos utilizados en minería. Por ejemplo la base de datos del sistemas de transporte de una mina, que tiene información de las disponibilidades, eficiencias, velocidades, asignaciones u otros KPIs de los equipos mineros.

 

2.2. SQL - STRUCTURED QUERY LANGUAGE

Es un lenguaje de programación estandarizado que se utiliza para administrar e interactuar con bases de datos relacionales. Las operaciones mas frecuentes en una base de datos so denominan bajo en termino C.R.U.D. (Create, Read, Update y Delete).

 

Una tabla es la unidad básica en una base de datos y puede ser relacionada con otros. El proceso de transformar una base de datos plana (contiene una sola tabla) en un base de datos relacional es considerada como normalización. En este proceso la información es sintetizada y organizada en diferentes tablas relacionadas que permiten optimizar el espacio de almacenamiento, mejorar la eficiencia en las consultas y evitar datos duplicados.

 

Por otro lado el lenguaje SQL es considerado como un estándar oficial para el Instituto Nacional Estadounidense de Estándares ( ANSI) en 1986, y de la Organización Internacional de Normalización (ISO) en 1987. Asimismo cada ciertos años se publican nuevas versiones del estándar SQL, la más reciente en 2016.

 

2.3. LENGUAJES Y SUBLENGUAJES DEL SQL

• DDL (Data Definition Language)DDL se utiliza para definir y modificar la estructura de la base de datos, como crear, modificar y eliminar objetos de base de datos como tablas, vistas e indices. Ademas permite establecer restricciones de integridad.

• DQL (Data Query Language)DQL se utiliza específicamente para consultas y recuperación de datos. La cláusula SELECT es la mas usada para filtrar y devolver datos específicos de una tabla.

• DML (Data Manipulation Language): DML se utiliza para insertar, actualizar y eliminar datos en la base de datos.

• DCL (Data Control Language): DCL se utiliza para administrar permisos y privilegios en la base de datos, como GRANT (conceder permisos) y REVOKE (revocar permisos).

• TCL (Transaction Control Language): TCL se utiliza para gestionar transacciones o cambios en la base de datos, como COMMIT (confirmar cambios) y ROLLBACK (desHacer cambios).

 

SQL DDL, DML, TCL And DCL GeeksforGeeks | dxmsimulations.com

2.4. ESTRUCTURA DE UNA QUERY

La estructura básica de una consulta SQL se presenta en forma de declaraciones que incluyen una declaración específica y elementos adicionales, como parámetros y operandos, que se aplican a esa declaración. La declaración SELECT es parte del lenguaje DQL y permite recuperar datos de una o más tablas o expresiones, ademas se incluir cláusulas opcionales, como:

• Cláusula FROM: Especifica las tablas de las que se obtendrán los datos.

• Cláusula WHERE: Contiene expresiones que filtran las filas devueltas por la consulta.

• Cláusula ORDER BY: Permite definir un orden en el que las filas serán devueltas.


III. CONSULTA BÁSICA - SELECT

3.1. SELECT ALL

La clausula SELECT * se utiliza para recuperar todos los datos de una tabla. En este a usamos para tener una visión completa de la información que contiene la tabla “tonelaje”.


 

3.2. SELECT COLUMNAS ESPEFICICAS

Tambien se puede obtener la información de columnas especificas, colocando luego del SELECT las columnas que se desea ver como resultado final. Esto se realiza para ahorrar tiempo y recursos, dado que normalmente las bases de datos en mina son muy pesados y extensos. Por ejemplo podemos realizar una consulta para solo ver información relevante del tonelaje de cada camión, su destino y su hora de inicio y fin del ciclo.


IV. CLAUSULA WHERE

La clausula WHERE acompaña a la declaración SELECT cuando se pretende extraer sólo aquellos registros que cumplan una condición específica. Dichas condiciones son definidas mediante los operadores correspondientes: LIKE, IN, BETWEEN, AND, OR, NOT.

 

4.1. WHERE LIKE

La cláusula WHERE con LIKE se utiliza para buscar valores que coincidan con un patrón específico. En este caso solo se esta filtrando la información de los ciclo de carguío que tuvieron como destino el “Botadero Alejandro”.

4.2. WHERE IN

La cláusula WHERE con IN se utiliza para buscar valores que coincidan con uno de varios valores posibles. Por ejemplo, se puede usar para visualizar la información de los ciclo que tuvieron como destino el "Botadero Alejandro", "Botadero Castillo" y "Botadero Garcia”.

4.3. WHERE BETWEEN

La cláusula WHERE con BETWEEN se utiliza para buscar valores dentro de un rango específico. Por ejemplo, para encontrar los ciclos de carguío y acarreo que se realizaron durante la hora de almuerzo (11 am a 1:00 pm), estos son importantes porque normalmente se pierda la productividad en este horario.

4.4. WHERE Y OPERADORES MATEMATICOS

Los operadores matemáticos son herramientas esenciales en SQL que se utilizan en combinación con la cláusula WHERE para filtrar y condicionar los resultados de las consultas en una base de datos. En la siguiente imagen se pueden visualizar los operadores mas comunes.

 

4.4.1. OPERADOR MAYOR QUE

El operador de mayor que se utiliza para seleccionar registros con valores mayores que un número específico. Por ejemplo, podemos encontrar todos los registros de los camiones con sobrecarga, es decir mayor a 250 toneladas.

Incluso se puede realizar una consulta mas especifica donde se identifiquen todos los eventos de sobrecarga del camión HT 003, de igual manera se puede hacer la consulta por cada camión. Esto es importante el encargo del área de Dispach, dado que puede identificar que camión es el que tiene mas eventos de sobrecarga.

4.4.1. OPERADOR MENOR QUE

El operador de menor que se utiliza para seleccionar registros con valores menores que un número específico. Por ejemplo, si el target de tonelaje cargado en un camión es de 235, entonces podemos identificar aquellos ciclos en los cuales se cargo un tonelaje por debajo del target de mina.


V. CLAUSULA ORDER BY

La cláusula ORDER BY se utiliza para ordenar los resultados en función de una o más columnas.

 

5.1. ORDER BY ASC

Ordena los resultados en orden ascendente (de menor a mayor) en función de una columna específica. Por ejemplo, se puede ordenar los registros de tonelaje de manera ascendente, de tal manera que si se realiza un contraste con el operador de la pala de ese ciclo, se puede identificar que operador incide mas en esos eventos.

5.2. ORDEN BY DESC

Ordena los resultados en orden descendente (de mayor a menor) en función de una columna específica. De igual manera se puede ordenar el tonelaje de manera descendente para ver los eventos de sobrecarga.


VI. CLAUSULA GROUP BY

La cláusula GROUP BY se utiliza para agrupar filas basadas en el valor de una o más columnas. Luego, puedes aplicar funciones de agregación a estos grupos, como SUM, COUNT, AVG, etc.

 

Para el ejemplo se esta usando la función de agregación de suma (SUM) del tonelaje y los agrupamos por cada tipo de camiones (HT 001, HT 002 y HT 003).

Tambien se puede identificar el tonelaje promedio trasportado en un ciclo por cada operador del camión minero.


VII. SUBQUERIES

Las subconsultas (subqueries) son consultas SQL anidadas dentro de una consulta principal. Pueden utilizarse en diversas situaciones para recuperar, filtrar o realizar cálculos basados en datos de otras tablas o subconjuntos de datos. La manera mas sencilla de identificar una subconsulta, es observando un el código, una clausula SELECT dentro de la estructura de un consulta, puede ser dentro de otra clausula SELECT, dentro de la clausula FROM o clausula WHERE.

 

Para nuestra base de datos podemos formular la siguiente consulta anidada, que nos permitirá identificar los registros que tienen un tonelaje cargado mayor al promedio y que además tienen como origen el Stock04_3000.

Las subconsultas son una característica crucial en SQL que permiten refinar y condicionar los resultados de las consultas principales. Estas consultas anidadas desempeñan un papel fundamental al permitir comparaciones precisas, la recuperación de datos jerárquicos y la conexión de información dispersa en tablas relacionadas. Por ejemplos en mina se tienen diferentes tablas, como tonelaje, disponibilidad, recuperación, fragmentación del mineral, y otros; pero a través de las subconsultas se puede obtener información especifica de las tablas relacionales.


CONCLUSIÓN

Como estudiantes y profesionales de la industria minera, debemos reconocer la importancia del manejo de base de datos para la toma de decisiones informadas y la mejora de las operaciones. La comprensión de las consultas y subconsultas en SQL, descritas en este artículo, se vuelve fundamental en nuestro camino de ser futuros profesionales que abordan los desafíos de manera más precisa y eficiente, y para continuar avanzando hacia un futuro minero más seguro y productivo. La gestión y análisis de datos a través de bases de datos es, sin lugar a dudas, una habilidad invaluable que contribuirá a nuestro éxito y crecimiento en la industria minera.

 

REFERENCIAS BIBLIOGRAFICAS

• SQL Guide - ORDER BY Clause (Introduction to SQL Query Structure). (s. f.). https://tprojects.schneider-electric.com/GeoSCADAHelp/ClearSCADA%202017%20R2/Content/SQLGuide/ORDERBYClause.htm

• Devart. (s. f.). DBForge Query Builder for SQL Server - Visual Query Designer Tool. Devart Software. https://www.devart.com/dbforge/sql/querybuilder/basic-sql-query.html#:~:text=The%20structure%20of%20any%20SQL,relating%20to%20the%20specific%20database.

• MySQL :: MySQL Tutorial :: 7 examples of common queries. (s. f.). https://dev.mysql.com/doc/mysql-tutorial-excerpt/8.0/en/examples.html

• Pichardo, A. (2008, 30 noviembre). Ejemplo de queries de MySQL. ejemplode.comhttps://www.ejemplode.com/22-mysql/326-ejemplo_de_queries_de_mysql.html

• Drake, M. (2018). An introduction to queries in MySQL. DigitalOcean. https://www.digitalocean.com/community/tutorials/introduction-to-queries-mysql

Comentarios

Registrate o Inicia Sesión para comentar y obtener Cursos de pago gratis

function loadurl(){ var val1 = document.getElementById("valor3").value; console.log(val1); if(val1){ window.location = "/comunidad/blog/filtrar/"+val1+"/"} }