SQL-Abfragen aus natürlicher Sprache generieren
Lernen Sie, wie Sie ein LLM dazu anleiten, Fragen in Alltagssprache in korrektes SQL zu übersetzen, indem Sie Schema-Kontext, Beispiele und Sicherheitsvorkehrungen bereitstellen
SQL-Abfragen aus natürlicher Sprache generieren ist eine kostenlose Prompt Engineering & LLM Optimization for Developers-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Prompt Engineering & LLM Optimization for Developers-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Prompt Engineering & LLM Optimization for Developers-Kurs umfasst insgesamt 4 Lektionen.
Teile dieser Lektion wurden noch nicht übersetzt und werden auf Englisch angezeigt.
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 fetchedSelf-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.
Häufig gestellte Fragen
Ist die Lektion „SQL-Abfragen aus natürlicher Sprache generieren“ kostenlos?
Ja — der vollständige Text von „SQL-Abfragen aus natürlicher Sprache generieren“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Prompt Engineering & LLM Optimization for Developers-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Prompt Engineering & LLM Optimization for Developers-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „SQL-Abfragen aus natürlicher Sprache generieren“?
Lernen Sie, wie Sie ein LLM dazu anleiten, Fragen in Alltagssprache in korrektes SQL zu übersetzen, indem Sie Schema-Kontext, Beispiele und Sicherheitsvorkehrungen bereitstellen Du übst Prompt Engineering & LLM Optimization for Developers mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Prompt Engineering & LLM Optimization for Developers zu starten?
Keine Vorkenntnisse erforderlich. Prompt Engineering & LLM Optimization for Developers auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.
Wie lange dauert die Lektion „SQL-Abfragen aus natürlicher Sprache generieren“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Prompt Engineering & LLM Optimization for Developers-Lektion Code schreiben und ausführen?
Ja. Jede Prompt Engineering & LLM Optimization for Developers-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Codegenerierung und Refactoring
- Debugging und Generierung von Testfällen
- Datenextraktion und Zusammenfassung
- SQL-Abfragen aus natürlicher Sprache generieren