Query-module

SQL-analyses op Parquet data

Met de Query-module voer je SQL-analyses uit op Parquet-bestanden in je project. Je kunt zelf SQL schrijven of een beschrijving geven en de query laten genereren.

Mini-scenario: je wilt de top 10 leveranciers op basis van uitgaven zien. Met een korte beschrijving laat je de AI een query genereren, die je daarna controleert en uitvoert.

Invoerformulier

Data source(s)

Kies één of meerdere Parquet-datasets. Deze worden beschikbaar in je SQL-query.

Description

Optioneel. Beschrijf in gewone taal wat je wilt analyseren. Je kunt daarna Ask AI to create the query gebruiken om een SQL-statement te genereren.

SQL statement

Hier schrijf of plak je de SQL-query. Gebruik dubbele aanhalingstekens voor bestandsnamen.

Let op: haal alleen de kolommen op die je nodig hebt. Dit maakt de query sneller en je resultaten overzichtelijker.

Output

Naam van de output-tabel (zonder extensie). Dit wordt het resultaatbestand in Parquet.

Command

De Query-module heeft een command waarmee je dezelfde analyse via chat of scripts kunt uitvoeren.

Syntax

QUERY(input=["file.parquet"], sql="SELECT ...", output="result")

Voorbeelden

QUERY(input=["sales.parquet"], sql="SELECT * FROM \"sales.parquet\" LIMIT 1000", output="sales_preview")
QUERY(input=["sales.parquet", "customers.parquet"], description="Top 10 klanten op omzet", output="top_customers")

Resultaat

Na uitvoering verschijnt het resultaat in de Resultaten-tab als Parquet-bestand. Vanuit daar kun je de tabel openen of exporteren.

Praktische tip: begin met een LIMIT om je query te testen, en verwijder die pas als de output klopt. Dit voorkomt onnodig zware runs.

SQL Functies Overzicht

De Query-module gebruikt DuckDB. Hier de belangrijkste functies:

Aggregate Functies

Functie Beschrijving Voorbeeld
SUM(col) Som van waarden SUM(amount)
AVG(col) Gemiddelde AVG(price)
COUNT(*) Aantal rijen COUNT(*)
MIN(col) / MAX(col) Min / max MIN(date)
MEDIAN(col) Mediaan MEDIAN(age)

String Functies

Functie Beschrijving Voorbeeld
UPPER(str) Hoofdletters UPPER('hello')'HELLO'
LOWER(str) Kleine letters LOWER('HELLO')'hello'
LENGTH(str) Lengte LENGTH('test')4
CONCAT(a, b) Samenvoegen CONCAT('A', 'B')'AB'
TRIM(str) Spaties weg TRIM(' test ')'test'

Datum Functies

Functie Beschrijving Voorbeeld
YEAR(date) Jaar YEAR('2025-03-15')2025
MONTH(date) Maand MONTH('2025-03-15')3
QUARTER(date) Kwartaal QUARTER('2025-03-15')1
DATE_TRUNC(part, date) Afkappen DATE_TRUNC('month', date)

Conditionele Functies

-- CASE WHEN
SELECT
    name,
    CASE
        WHEN amount < 1000 THEN 'Klein'
        WHEN amount < 10000 THEN 'Middel'
        ELSE 'Groot'
    END as categorie
FROM transactions

-- COALESCE (eerste non-null)
SELECT COALESCE(phone, email, 'Geen contact') as contact
FROM customers

Type Conversie

Functie Beschrijving
CAST(val AS type) Type conversie
TRY_CAST(val AS type) Veilige conversie (NULL bij fout)
TO_DATE(str) String naar datum

Tip: Gebruik TRY_CAST voor data van onbekende kwaliteit.

Zie ook