0Pricing
Prompt Engineering & LLM Optimization for Developers · Lección

Generación de consultas SQL a partir de lenguaje natural

Aprenda a indicar a un LLM que traduzca preguntas en lenguaje natural a SQL correcto proporcionándole el contexto del esquema, ejemplos y barreras de seguridad.

Generación de consultas SQL a partir de lenguaje natural es una lección gratuita de Prompt Engineering & LLM Optimization for Developers en CoddyKit. Esta es la lección 4 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Prompt Engineering & LLM Optimization for Developers, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Prompt Engineering & LLM Optimization for Developers incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

Text-to-SQL Overview

One of the most practical developer uses of LLMs is turning a plain question like How many orders shipped last week? into a runnable SQL query.

Done well, it lets non-experts query data and speeds up everyday analysis.

The Model Needs the Schema

An LLM cannot guess your table and column names. Always include the relevant schema in the prompt so it references real fields.

Schema:
orders(id, customer_id, status, total, created_at)
customers(id, name, country)

A Basic Text-to-SQL Prompt

Combine schema, the question, and an instruction to return only SQL.

Given the schema above, write a single
Postgres query. Return only SQL.
Question: total revenue per country last month.

Specify the Dialect

SQL dialects differ (Postgres, MySQL, SQLite, BigQuery). State which one you use, or the model may emit functions your database does not support.

Few-Shot Examples Help

Showing one or two question-to-SQL pairs teaches the model your conventions, like how you format dates or name aliases.

Q: customers from Japan
SQL: SELECT * FROM customers WHERE country = 'Japan';
Q: orders over 100
SQL: SELECT * FROM orders WHERE total > 100;

Handling Joins

For questions spanning tables, hint at the relationships in the schema (foreign keys) so the model joins correctly instead of guessing.

-- orders.customer_id references customers.id
SELECT c.country, SUM(o.total)
FROM orders o JOIN customers c
  ON o.customer_id = c.id
GROUP BY c.country;

Guardrail: Read-Only

Never run model-generated SQL with write access. Restrict the connection to SELECT only and reject any query containing DELETE, UPDATE, or DROP.

if (/\b(delete|update|drop|insert)\b/i.test(sql)) {
  throw new Error('Only read queries allowed');
}

Validate Before Executing

Parse or EXPLAIN the query before running it. This catches syntax errors and lets you reject queries touching tables outside an allowlist.

EXPLAIN SELECT ...; -- check plan, no data fetched

Self-Correction Loop

If the query errors, feed the database error message back to the model and ask it to fix the SQL. Two or three attempts usually resolve most mistakes.

The query failed with: column "revenue"
does not exist. Fix the SQL.

Explaining Results

After running the query, you can ask the model to summarize the rows in plain language, closing the loop from question to readable answer.

Limits to Remember

  • Ambiguous questions yield ambiguous SQL.
  • Large schemas may not fit in context, retrieve the relevant tables.
  • Always verify aggregates on critical reports.

Quick Check

Test your understanding of text-to-SQL.

Recap

Text-to-SQL works by giving the model the schema, dialect, and few-shot examples, then validating output. Always run generated SQL read-only, validate before executing, and use a self-correction loop on errors.

Preguntas frecuentes

¿La lección «Generación de consultas SQL a partir de lenguaje natural» es gratis?

Sí — el texto completo de «Generación de consultas SQL a partir de lenguaje natural» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Prompt Engineering & LLM Optimization for Developers, actualiza a CoddyKit PRO. El curso de Prompt Engineering & LLM Optimization for Developers incluye 4 lecciones en total.

¿Qué aprenderé en «Generación de consultas SQL a partir de lenguaje natural»?

Aprenda a indicar a un LLM que traduzca preguntas en lenguaje natural a SQL correcto proporcionándole el contexto del esquema, ejemplos y barreras de seguridad. Practicas Prompt Engineering & LLM Optimization for Developers con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.

¿Necesito experiencia previa para empezar Prompt Engineering & LLM Optimization for Developers?

No se requiere experiencia previa. Prompt Engineering & LLM Optimization for Developers en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 4 de 4.

¿Cuánto tiempo toma la lección «Generación de consultas SQL a partir de lenguaje natural»?

La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.

¿Puedo escribir y ejecutar código en esta lección de Prompt Engineering & LLM Optimization for Developers?

Sí. Cada lección de Prompt Engineering & LLM Optimization for Developers incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.

Todas las lecciones de este curso

  1. Generación y refactorización de código
  2. Depuración y generación de casos de prueba
  3. Extracción y resumen de datos
  4. Generación de consultas SQL a partir de lenguaje natural
← Volver a Prompt Engineering & LLM Optimization for Developers