Zum Inhalt springen
🛠️ToolsShed

SQL-Ergebnis zu JSON Konverter

SQL-Abfrageergebnisse (MySQL/PostgreSQL CLI-Ausgabe) in JSON konvertieren. Unterstützt tabulator- und pipe-getrennte Formate.

Über dieses Tool

Der SQL to JSON Converter wandelt die Tabelle, die MySQL oder PostgreSQL in Ihrem Terminal ausgeben, in ein sauberes JSON-Array um. Statt Konsolen-Abfrageergebnisse von Hand abzutippen, erhalten Sie strukturierte Daten, die Sie direkt in APIs, Fixtures oder Skripte einfügen können.

Fügen Sie die Ergebnistabelle der CLI ein, und das Tool liefert ein JSON-Array, in dem jede Zeile zu einem Objekt mit den Spaltennamen als Schlüsseln wird. Das ist praktisch, um Testdaten zu befüllen, schnelle API-Mocks zu erstellen oder die Abfrageausgabe ohne Datenbank-Client in Ihren Code zu übernehmen.

Es verarbeitet sowohl tabulator- als auch pipe-getrennte Tabellenausgaben, sodass die CLI-Formate von MySQL und PostgreSQL beide funktionieren. Alles läuft lokal in Ihrem Browser, sodass Ihre Abfragedaten niemals irgendwohin hochgeladen werden.

Häufig gestellte Fragen

Code-Implementierung

import json
import re

def parse_mysql_output(text):
    """Parse MySQL CLI pipe-separated output to JSON."""
    lines = text.strip().splitlines()
    # Filter out separator lines (+---+) and empty lines
    data_lines = [l for l in lines if l.strip() and not re.match(r'^\s*[+\-]+', l)]
    if len(data_lines) < 2:
        return []

    # Split by pipe and strip whitespace
    def split_row(line):
        return [c.strip() for c in line.split('|') if c.strip() != '']

    headers = split_row(data_lines[0])
    rows = [split_row(l) for l in data_lines[1:]]

    return [dict(zip(headers, row)) for row in rows]

# Example: MySQL output
mysql_output = """
+----+-------+-------+
| id | name  | score |
+----+-------+-------+
|  1 | Alice |    95 |
|  2 | Bob   |    87 |
+----+-------+-------+
"""

result = parse_mysql_output(mysql_output)
print(json.dumps(result, indent=2))

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.