Start / Blog / Datenmanagement / Beispiel von Datenbanken zum Testen von Text zu SQL

Beispiel von Datenbanken zum Testen von Text zu SQL

Zusammenfassen mit ChatGPT

Text zu SQL – also aus natürlichsprachlichen Fragen präzise SQL-Queries zu generieren – ist eine spannende Schnittstellen zwischen natürlicher Sprache und strukturierter Datenverarbeitung.

Damit diese Art von KI funktioniert, braucht sie einen realistischen Kontext: Tabellen, Spalten, Beziehungen und Inhalte.

Genau hier kommen Beispiel-Datenbanken ins Spiel.

In diesem Beitrag stelle ich einige beispielhafte Open-Source-SQL-Datenbanken vor, die man sofort verwenden kann, um eigene Versuche durch zu führen oder oder ein Text-zu-SQL-Modell zu testen.

Aviano DB – Car Rental System

Use Case:
Diese Datenbank bildet ein vollständiges Mietwagensystem ab – inklusive Kunden, Fahrzeuge, Standorte, Versicherung, Rechnungen und Zusatzoptionen. Sie eignet sich hervorragend, um komplexe SQL-Joins, Summen, Gruppierungen und Datumsfunktionen zu trainieren.

Datenbank:
Die Aviano-DB enthält realistische Tabellen wie customer, vehicle_type, rental, fuel_option, insurance, equipment_type und viele mehr. Ein ERD ist im Repo enthalten.

Text Prompt Beispiel:

„Zeige mir alle Kunden mit ihrem Namen, der Fahrzeugkategorie, dem Abholort und dem Abholdatum.“

SELECT
    CONCAT_WS(',', c.first_name, c.last_name) AS 'Customer Name',
    vt.name AS 'Car Type',
    CONCAT_WS(',', l1.city, l1.state) AS 'Pickup Location',
    r.start_date as 'Pickup Date'
FROM
    rental AS r
        JOIN customer AS c ON r.customer_id = c.id
        JOIN vehicle_type AS vt ON r.vehicle_type_id = vt.id
        JOIN location AS l1 ON r.pickup_location_id = l1.id;

📎 Zum GitHub-Repo

Chinook DB – Klassisches Mediengeschäft

Use Case:
Chinook ist perfekt für Musik- und Medien-bezogene Analysen. Es enthält Künstler, Alben, Tracks, Genres, Kunden und Verkäufe. Ideal für Einsteiger und Business-Intelligence-Use-Cases.

Datenbank:
Typische Tabellen: Customer, Invoice, InvoiceLine, Track, Album, Artist.

Text Prompt Beispiel:

„Welche fünf Künstler haben die meisten Verkäufe generiert?“

SELECT
    a.Name AS Artist,
    SUM(il.Quantity) AS TotalSales
FROM
    InvoiceLine il
        JOIN Track t ON il.TrackId = t.TrackId
        JOIN Album al ON t.AlbumId = al.AlbumId
        JOIN Artist a ON al.ArtistId = a.ArtistId
GROUP BY a.Name
ORDER BY TotalSales DESC
LIMIT 5;

📎 Zum GitHub-Repo

Northwind Traders – Klassiker für B2B-Handel

Use Case:
Northwind simuliert den Vertrieb eines Großhandelsunternehmens mit Produkten, Bestellungen, Lieferanten und Mitarbeitern. Die Datenbank ist reich an Relationen und eignet sich besonders gut für JOIN-Übungen und Geschäftslogik-Analysen.

Datenbank:
Kern-Tabellen: Orders, OrderDetails, Products, Customers, Suppliers, Employees, Shippers.

Text Prompt Beispiel:

„Welche Mitarbeiter haben im Mai 1997 Bestellungen abgewickelt und wie hoch war der Gesamtumsatz?“

SELECT
    e.FirstName || ' ' || e.LastName AS Employee,
    SUM(od.UnitPrice * od.Quantity) AS TotalSales
FROM
    Employees e
        JOIN Orders o ON e.EmployeeID = o.EmployeeID
        JOIN OrderDetails od ON o.OrderID = od.OrderID
WHERE
    o.OrderDate BETWEEN '1997-05-01' AND '1997-05-31'
GROUP BY Employee;

📎 Zum GitHub-Repo

Pizza-Datenbank

Use Case:
Minimalistische Datenbank rund um Pizza-Bestellungen. Ideal für Demonstrationen, Performance-Tests oder den Aufbau eines ersten Chatbots für Restaurants.

Datenbank:
Tabellen wie pizzas, orders, customers, toppings, order_details.

Text Prompt Beispiel:

„Welche Pizzas wurden im letzten Monat am häufigsten bestellt?“

SELECT
    p.name,
    COUNT(od.pizza_id) AS TimesOrdered
FROM
    order_details od
        JOIN pizzas p ON od.pizza_id = p.id
        JOIN orders o ON od.order_id = o.id
WHERE
    o.order_date >= DATE('now', '-1 month')
GROUP BY p.name
ORDER BY TimesOrdered DESC;

📎 Zum GitHub-Repo

Mitarbeiter Datenbank

profolsen/employees

Zweck:
Bereitstellung einer modifizierten Version der PostgreSQL-Demodatenbank „employees“.

Inhalt:

  • SQL- und Java-Dateien für den Import und Zugriff.
  • Struktur und Daten entsprechen in Teilen der bekannten MySQL-Datenbank „employees“.
  • Fokus auf korrekter Lizenzierung und Attribution der Ursprungsquellen.

Besonderheiten:

Datenanalyse auf Basis eines Flughafens

fortunewalla/airportdb

Lernprojekt für SQL, MySQL und Datenanalyse auf Basis eines Flughafen-Datensatzes.

Inhalt:

  • SQL-Dumps (Schema und Daten) eines modifizierten Flughafen-Datensatzes („ffdb“).
  • Anleitung zur Installation mit mysql und mysqlsh.
  • Vorbereitung für Analytics & HeatWave-ML von Oracle.

Besonderheiten:

  • Daten ursprünglich aus der deutschen flughafendb.cc, auf Englisch übersetzt.
  • Enthält große SQL-Dateien (über 90 MB).
  • Integration mit HeatWave/ML dokumentiert.
  • Lizenz nicht explizit angegeben, aber Verweise auf Originalquellen vorhanden.

Analyse von Babynamen in den USA auf nationaler und bundesstaatlicher

ktaranov/BabbyNames

Visualisierung und Analyse von Babynamen in den USA auf nationaler und bundesstaatlicher Ebene.

Besonderheiten:

Simulation eines Webshops mit 1000 Kunden, 2000 Bestellungen und 1000 Produkten

Bereitstellung eines PostgreSQL-Datensatzes zur Simulation eines Webshops.

JannikArndt/PostgreSQLSampleDatabase

Inhalt:

  • Schema mit:
    • 1000 Kunden
    • 2000 Bestellungen
    • 1000 Produkten mit insgesamt 17.730 Artikeln
  • src/ enthält Skripte zur DB-Erzeugung.
  • data/ enthält Dump zur Wiederherstellung via restore.sh.

Fazit

Es gibt einige Open-Source-SQL-Datenbanken, die für Versuche und Tests von Text-zu-SQL Modellen verwendet werden kann.
Wenn es weitere frei verfügbare SQL Datenbanken gibt, die wir hier auflisten sollen, lasse uns diese gerne im Feedback zukommen.

Fanden Sie die Seite hilfreich?

Vielen Dank für Ihr Feedback!

Würden Sie mir Feedback geben? (anonym)

Wir entwickeln KI-Software für Unternehmen und verzichten bewusst auf störende Werbebanner. Durch unsere Artikel dokumentieren wir Themen, die uns beschäftigen, interessieren und auch unser tägliches Brot finanzieren.

Da unsere Inhalte kostenfrei sind, ist Ihr Feedback unser Lob.

Jeder Autor liest Ihr anonymes Feedback persönlich, obwohl KI es automatisieren könnten, und integriert konstruktive Vorschläge direkt in die nächste Überarbeitung oder nutzt es als Inspiration für den nächsten Artikel.



    • Nico Engelmann
      (Autor)

      Als erfahrener AI Engineer lasse ich Lösungen mittels Künstlicher Intelligenz und klassischen Algorithmen entstehen.

    de_DEDE