# KDB+-q-SQL-Vektorausdrucks-Parsebaum-Erklärer

Parst q-Ausdrücke und q-sql-Abfragen in einen annotierten Baum: Rechts-nach-links-Auswertungsreihenfolge, Token-Klassen, die funktionale select-Form und Splayed-Spaltenattribute.

> Kanonische Seite: https://elysiatools.com/de/tools/kdb-plus-q-sql-vector-expression-parse-tree-explainer

- **Kategorie:** Data Visualization

- **Schlagwörter:** q parsebaum, q rechts nach links, kdb ausdrucksauswerter, funktionaler select generator, q adverben erklärt, splayed attribut referenz

## Überblick

Implementiert die einzige Auswertungsregel von q (keine Operatorvorrang, links-von-rechts), Adverb/Iterator-Parsing, die Phrasenaufteilung von Template-Abfragen mit dem Komma-Stolperstein, Funktionsform-Generierung, Zeituwandlung (Datum = Tageszahl seit 2000.01.01) und die vier Splayed-Attribute.

## Eingaben

- **q-Ausdruck oder select-Abfrage** (textarea): select max price by sym from trade where date=2026.09.07, price>10 also try: 2*3+4 · +/ 1 2 3 · x:1 2 3; sum each x
- **Auswertungsreihenfolge-Badges zeigen** (checkbox)
- **Funktionsform ?\[t;c;b;a\] zeigen** (checkbox)

## Wann verwenden

- Beim Debuggen unerwarteter Rechenergebnisse in q, die durch die fehlende Operatorrangfolge und die Auswertung von rechts nach links entstehen.
- Beim Konvertieren deklarativer q-sql-Statements (select/exec/update) in funktionale Abfragen für dynamische KDB+-Prozesse.
- Beim Überprüfen komplexer Filterkriterien in where-Klauseln hinsichtlich der sequenziellen Auswertungsreihenfolge und Datumsberechnungen.

## Funktionsweise

- Geben Sie einen beliebigen q-Ausdruck oder eine vollständige q-sql-Abfrage in das Eingabefeld ein.
- Wählen Sie über die Optionen aus, ob Auswertungsreihenfolge-Badges und die funktionale Form ?\[t;c;b;a\] im Ergebnis dargestellt werden sollen.
- Das Tool parst Tokens, ordnet Adverben zu, berechnet Datums-Offsets bezogen auf 2000.01.01 und erzeugt einen detaillierten visuellen HTML-Parsebaum.

## Anwendungsfälle

- Lernhilfe und Lehrmittel für KDB+/q-Einsteiger zum Verständnis der Vektorsemantik.
- Code-Analyse und Refactoring von Legacy-Abfragen in HDB- und RDB-Finanzdatenbanken.
- Vorbereitung dynamischer Abfragefilter für generische API-Gateways auf KDB+-Basis.

## Häufig gestellte Fragen

### Warum wertet q Ausdrücke wie 2*3+4 als 14 und nicht als 10 aus?

In q gibt es keine mathematische Operatorrangfolge. Ausdrücke werden strikt von rechts nach links ausgewertet, wodurch zuerst 3+4 zu 7 und danach 2*7 zu 14 berechnet wird.

### Was bewirkt die Option für die funktionale Form?

Sie übersetzt Standard-q-sql-Abfragen in das funktionale Format ?[t;c;b;a], welches zur Laufzeit programmatisch zusammengestellt werden kann.

### Wie werden q-Datumsangaben im Parsebaum interpretiert?

q speichert Datumsangaben als ganzzahlige Tagesdifferenz zum Basisdatum 2000.01.01, was im Parsebaum als numerischer Cast ausgewiesen wird.

### Werden Iteratoren und Adverben visualisiert?

Ja, Adverben wie each ('), over (/), scan (\) oder prior werden als modifizierende Knoten an den entsprechenden Operatoren im Baum markiert.

### Welche Rolle spielt das Komma in q-sql where-Klauseln?

Kommas trennen unabhängige Filterphrasen, die nacheinander von links nach rechts ausgewertet werden, um Teilergebnisse schrittweise einzugrenzen.

## Ähnliche Tools

- [CSV-zu-SQL-INSERT-Generator](https://elysiatools.com/de/tools/csv-flavor-to-sql-insert-emitter): Parst CSV/Excel-CSV/TSV (Auto-Erkennung, RFC 4180) und erzeugt INSERT-Stapel für MySQL/PostgreSQL/SQLite/SQL Server mit Typinferenz und ON CONFLICT/IGNORE
- [CSV-zu-Datenbank-Migrationsplaner](https://elysiatools.com/de/tools/csv-to-database-migration-planner): Leitet aus CSV-Daten ein relationales Schema ab und erzeugt CREATE-TABLE- und ALTER-Plaene fuer PostgreSQL, MySQL, SQLite oder SQL Server
- [SQL Ausführungsplan-Visualisierer](https://elysiatools.com/de/tools/sql-explain-plan-visualizer): Füge EXPLAIN-/EXPLAIN-ANALYZE-Ausgaben (PostgreSQL/MySQL/SQLite) ein, um einen Kostenbaum zu erhalten, Abweichungen zwischen geschätzten und tatsächlichen Zeilen zu markieren und Indexvorschläge zu erhalten
- [XLSX SQL INSERT Generator](https://elysiatools.com/de/tools/xlsx-sql-insert-generator): Erzeugt SQL-INSERTs aus Excel
- [A1Z26 Buchstaben-Zahlen-Werkstatt](https://elysiatools.com/de/tools/a1z26-letter-number-workbench): Wandelt zwischen Buchstaben und Zahlen um (A=1…Z=26) mit Trennzeichen/Groß-Klein, dekodiert Zahlen zu Buchstaben und summiert Buchstaben.
- [Cron-Ausdruck-Erklärer](https://elysiatools.com/de/tools/cron-expression-explainer): Zerlegt einen Cron-Ausdruck (5/6 Felder oder Quartz) in eine Beschreibung in natürlicher Sprache, zeigt die Felder und die nächsten N Ausführungen in jeder IANA-Zone, mit KI-Erklärung
- [IUPAC-Nomenklatur-Tool](https://elysiatools.com/de/tools/iupac-organic-naming-tool): Gib einen SMILES ein: erkennt die längste Kohlenstoffkette und die funktionelle Gruppe mit der höchsten Priorität, erzeugt den IUPAC-Namen mit E/Z- und R/S-Hinweisen und didaktischen Anmerkungen. Für Schule und Studium.
- [JWK-Generator & Parser](https://elysiatools.com/de/tools/jwk-generator): Generiert JSON Web Keys (JWK) für RSA, EC (P-256/P-384/P-521/secp256k1) und OKP (Ed25519/Ed448/X25519/X448) oder parst einen bestehenden JWK zur Inspektion von Parametern, Fingerabdruck und Metadaten

## Beispiele

- [SQL-Injection-Beispiele](https://elysiatools.com/de/samples/sql-injections): Bildungssammlung von SQL-Injection-Payloads für Sicherheitstests, Schwachstellenbewertung und defensive Coding-Praktiken
- [SQL-Skript-Beispiele](https://elysiatools.com/de/samples/sql-samples): SQL-Abfragebeispiele und Datenbankskripte für verschiedene Szenarien und Anwendungsfälle
- [SQL-Beispiele](https://elysiatools.com/de/samples/sql-viewer-samples): Beispieldateien fuer den Browser-basierten SQL-Viewer
- [MySQL Database Beispiele](https://elysiatools.com/de/samples/mysql-database-samples): MySQL-Datenbankskripte verschiedener Komplexitätsstufen, von einfachen Tabellen bis zu Unternehmens-ERP-Systemen
