Published on

January 24, 2021

Democratizando los datos con consultas en lenguaje natural en SQL Server

Introducción:

Codificar de manera eficiente en SQL Server o cualquier otro lenguaje de programación puede ser desafiante y llevar mucho tiempo. Los desarrolladores a menudo se preguntan si podría haber una mejor manera de escribir consultas utilizando consultas basadas en lenguaje natural en inglés para lograr los resultados deseados. Esto no solo facilitaría la exploración, transformación y análisis de datos, sino que también democratizaría el acceso a los datos para los desarrolladores ciudadanos con curvas de aprendizaje bajas. En este artículo, exploraremos cómo comenzar con las consultas en lenguaje natural en SQL Server.

Prerrequisitos:

Para comenzar, necesitarás:

  • Una instancia en ejecución de SQL Server
  • Una base de datos con datos de muestra

Comenzando:

Paso 1: Instalar las herramientas necesarias

Antes de poder comenzar a usar consultas en lenguaje natural en SQL Server, necesitamos instalar las herramientas necesarias. Una herramienta popular es SQL Server Machine Learning Services, que nos permite ejecutar scripts de Python dentro de SQL Server. Puedes instalar esta característica durante el proceso de instalación de SQL Server o agregarla más tarde utilizando el Centro de Instalación de SQL Server.

Paso 2: Habilitar la ejecución de scripts externos

Una vez instalada la característica SQL Server Machine Learning Services, necesitamos habilitar la ejecución de scripts externos. Esto se puede hacer ejecutando el siguiente comando T-SQL:

sp_configure 'external scripts enabled', 1;
RECONFIGURE;

Paso 3: Crear un procedimiento almacenado para consultas en lenguaje natural

A continuación, necesitamos crear un procedimiento almacenado que manejará las consultas en lenguaje natural. Este procedimiento almacenado tomará la consulta en inglés como entrada y la convertirá en una consulta SQL válida. Aquí tienes un ejemplo de cómo podría verse el procedimiento almacenado:

CREATE PROCEDURE dbo.ExecuteNaturalLanguageQuery
  @query NVARCHAR(MAX)
AS
BEGIN
  DECLARE @sql NVARCHAR(MAX);
  
  -- Convertir la consulta en inglés a SQL
  SET @sql = N'SELECT * FROM dbo.MyTable WHERE ' + @query;
  
  -- Ejecutar la consulta SQL
  EXEC sp_executesql @sql;
END;

Paso 4: Probar el procedimiento almacenado

Ahora que hemos creado el procedimiento almacenado, podemos probarlo con algunas consultas en lenguaje natural. Aquí tienes algunos ejemplos:

EXEC dbo.ExecuteNaturalLanguageQuery 'Muéstrame todos los clientes de Nueva York';
EXEC dbo.ExecuteNaturalLanguageQuery '¿Cuál es la venta total para cada categoría de producto?';
EXEC dbo.ExecuteNaturalLanguageQuery 'Encuentra los 10 productos con las calificaciones más altas';

Conclusión:

Al utilizar consultas en lenguaje natural en SQL Server, podemos hacer que la exploración y el análisis de datos sean más accesibles para los desarrolladores ciudadanos. Con la capacidad de escribir consultas en inglés, los desarrolladores pueden centrarse en la lógica y la intención de la consulta en lugar de la sintaxis. Esto puede llevar a ciclos de desarrollo más rápidos y prácticas de codificación más eficientes. Pruébalo y observa cómo las consultas en lenguaje natural pueden simplificar tu proceso de desarrollo en SQL Server.

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.