# Explorateur d’arbres d’expressions vectorielles q SQL de KDB+

Analyse les expressions q et requêtes q-sql en un arbre annoté : ordre d’évaluation de droite à gauche, classes de jetons, forme fonctionnelle de select et attributs de colonnes splayed.

> Page canonique: https://elysiatools.com/fr/tools/kdb-plus-q-sql-vector-expression-parse-tree-explainer

- **Catégorie:** Data Visualization

- **Mots-clés:** arbre syntaxique q, q droite à gauche, évaluateur d’expressions kdb, générateur select fonctionnel, adverbes q expliqués, référence attributs splayed

## Présentation

Implémente l’unique règle d’évaluation de q (aucune précédence, gauche-de-droite), l’analyse des adverbes/itérateurs, le découpage des phrases des requêtes gabarit avec le piège de la virgule, la génération de la forme fonctionnelle, la conversion temporelle (les dates sont des comptes de jours depuis le 2000.01.01) et les quatre attributs splayed.

## Entrées

- **expression q ou requête select** (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
- **Afficher les badges d’ordre d’évaluation** (checkbox)
- **Afficher la forme fonctionnelle ?\[t;c;b;a\]** (checkbox)

## Quand l'utiliser

- Comprendre l'ordre d'évaluation strict de droite à gauche et l'absence de précédence des opérateurs dans une expression vectorielle q.
- Convertir une requête q-sql classique contenant des clauses where et by en sa forme fonctionnelle équivalente ?\[t;c;b;a\].
- Inspecter le découpage des clauses de filtrage et vérifier la conversion interne des formats temporels ou des attributs de table.

## Fonctionnement

- Saisissez votre code q brut ou votre requête de type select dans la zone de texte principale.
- Activez les options pour afficher les badges d'ordre d'évaluation pas à pas ou générer la syntaxe fonctionnelle ?\[t;c;b;a\].
- Générez le rapport interactif pour visualiser l'arbre syntaxique, la décomposition des jetons et les étapes de réduction.

## Cas d'usage

- Déboguer des expressions mathématiques complexes en vérifiant l'ordre d'exécution sans parenthèses redondantes.
- Construire des requêtes analytiques dynamiques sur des bases de données historiques (HDB) en extrayant la forme fonctionnelle.
- Former des développeurs et analystes financiers aux particularités syntaxiques et à la logique vectorielle de KDB+/q.

## Questions fréquentes

### Pourquoi l'expression 2*3+4 est-elle évaluée à 14 en langage q ?

Le langage q n'applique aucune priorité aux opérateurs mathématiques et évalue les termes strictement de droite à gauche : 3+4 est calculé en premier (7), puis multiplié par 2.

### Qu'est-ce que le piège de la virgule dans les clauses where en q-sql ?

Dans une clause where, les conditions séparées par des virgules sont évaluées séquentiellement de gauche à droite, filtrant progressivement les lignes avant la condition suivante.

### Comment les dates KDB+ sont-elles représentées dans l'arbre d'évaluation ?

Les dates q sont des entiers représentant le nombre de jours écoulés depuis le point d'origine fixé au 1er janvier 2000 (2000.01.01).

### À quoi sert la conversion en forme fonctionnelle ?\[t;c;b;a\] ?

Elle permet d'exécuter des requêtes dynamiques par programmation en passant la table, les clauses de filtrage, les regroupements et les agrégations sous forme de listes et d'arbres syntaxiques.

### L'outil prend-il en charge les adverbes et itérateurs q ?

Oui, l'analyseur décompose les adverbes comme each, over (/), scan (\) et les itérateurs appliqués aux fonctions vectorielles.

## Outils associés

- [Générateur d'INSERT SQL depuis CSV](https://elysiatools.com/fr/tools/csv-flavor-to-sql-insert-emitter): Analyse CSV/Excel-CSV/TSV (détection auto, RFC 4180) et produit des lots INSERT pour MySQL/PostgreSQL/SQLite/SQL Server avec inférence de types et ON CONFLICT/IGNORE
- [Planificateur de migration CSV vers base de donnees](https://elysiatools.com/fr/tools/csv-to-database-migration-planner): Infere un schema relationnel a partir dun CSV et genere CREATE TABLE et ALTER pour PostgreSQL, MySQL, SQLite ou SQL Server
- [Visualiseur de Plan d’Exécution SQL](https://elysiatools.com/fr/tools/sql-explain-plan-visualizer): Collez la sortie EXPLAIN / EXPLAIN ANALYZE (PostgreSQL/MySQL/SQLite) pour obtenir un arbre des coûts, repérer les écarts lignes estimées/réelles et des suggestions d’index
- [Generateur XLSX SQL INSERT](https://elysiatools.com/fr/tools/xlsx-sql-insert-generator): Genere des INSERT SQL depuis Excel
- [Atelier A1Z26 lettre-nombre](https://elysiatools.com/fr/tools/a1z26-letter-number-workbench): Convertit entre lettres et nombres (A=1…Z=26) avec séparateur et casse configurables, décode les nombres en lettres et calcule la somme des lettres.
- [Explorateur d’Expressions Cron](https://elysiatools.com/fr/tools/cron-expression-explainer): Analyse une expression cron (5/6 champs ou Quartz) en description en langage naturel, détaille les champs et liste les N prochaines exécutions dans tout fuseau IANA, avec une explication IA
- [Nomenclature IUPAC organique](https://elysiatools.com/fr/tools/iupac-organic-naming-tool): Entrez un SMILES : identifie la plus longue chaîne carbonée et le groupe fonctionnel prioritaire, génère le nom IUPAC avec indications E/Z et R/S et notes pédagogiques. Pour lycée et université.
- [Générateur et Analyseur JWK](https://elysiatools.com/fr/tools/jwk-generator): Génère des JSON Web Keys (JWK) pour RSA, EC (P-256/P-384/P-521/secp256k1) et OKP (Ed25519/Ed448/X25519/X448), ou analyse un JWK existant pour inspecter ses paramètres, empreinte et métadonnées

## Exemples

- [Exemples d'Injections SQL](https://elysiatools.com/fr/samples/sql-injections): Collection éducative de payloads d'injection SQL pour les tests de sécurité, l'évaluation des vulnérabilités et les pratiques de codage défensif
- [Exemples de Scripts SQL](https://elysiatools.com/fr/samples/sql-samples): Exemples de requêtes SQL et scripts de base de données pour divers scénarios et cas d'usage
- [Echantillons SQL](https://elysiatools.com/fr/samples/sql-viewer-samples): Fichiers d exemple pour la visionneuse SQL dans le navigateur
- [MySQL Database Exemples](https://elysiatools.com/fr/samples/mysql-database-samples): Scripts de base de données MySQL de divers niveaux de complexité, des tables simples aux systèmes ERP d'entreprise
