Startseite
Slot sichern →
SOP-ADVANCED-QUERY-DATALOG-1.0Rev. v1.0··2026-05-22

Advanced Query (Datalog)

Wenn eine Filterzeile nicht reicht — Regeln, die verknüpfen, ableiten und verdichten

ABLAUF
  1. 1
    Query-Block einfügen und in den Datalog-Modus wechseln.
    WERKZEUG
    mium
    DAUER10 sek
    Prüfpunkt: Ein leerer :find/:where-Block steht bereit.
  2. 2
    :find auf die gesuchte Größe setzen, :where mit Bedingungen füllen — je Zeile eine.
    WERKZEUG
    Datalog-Editor
    DAUER60 sek
    Prüfpunkt: Die Regel liefert eine erste Treffermenge.
  3. 3
    Variablen über Blöcke verbinden (Join) oder mit count/sum aggregieren.
    MATERIAL
    Variablen ?x
    DAUER60 sek
    Prüfpunkt: Der Report verknüpft mehrere Kriterien.
  4. 4
    Regel als benannte Sicht speichern; sie berechnet sich bei jeder Änderung neu.
    MATERIAL
    Seite oder Dashboard
    DAUER15 sek
    Prüfpunkt: Die gespeicherte Regel erscheint und aktualisiert sich live.
HINTERGRUND

Eine Simple Query filtert eine Property und wird zur Sicht. Aber sobald Du zwei Dinge verbinden willst — offene Aufgaben aus den Meetings eines Quartals, gruppiert nach Projekt — endet die Filterzeile. Datalog beginnt genau dort: Du beschreibst die Beziehung als Regel, und mium leitet den Rest ab.

Wo die Filterzeile endet

Eine Filterzeile prüft Blöcke einzeln gegen feste Kriterien. Sie kann nicht über Blöcke hinweg verbinden, nichts ableiten und nichts zusammenrechnen. Multi-Kriterien-Reports klickst Du sonst aus mehreren Sichten von Hand zusammen — und pflegst sie ebenso. Datalog dreht das um: eine Regel, die Beziehungen beschreibt, und eine Engine, die sie auswertet.

Anatomie einer Regel

Eine Datalog-Regel hat zwei Teile: :find sagt, welche Größe Du sehen willst, :where listet die Bedingungen — je Zeile eine. Variablen wie ?task verbinden die Zeilen; taucht dieselbe Variable mehrfach auf, ist das ein Join.

[:find ?task
 :where
 [?task "type" "task"]
 [?task "status" "offen"]
 [?task "von-meeting" ?m]
 [?m "tag" "q3"]]
;; offene Aufgaben aus Q3-Meetings — ein Join über ?m

5 Bausteine für Advanced Query

  1. Die Regel beschreibt das Ziel (:find), nicht den Suchweg — Du sagst was, nicht wie.
  2. Jede :where-Zeile ist eine Bedingung; gemeinsame Variablen verbinden sie zum Join.
  3. Aggregate verdichten: count, sum, max, min, avg über die Treffermenge.
  4. Eine Regel ist wiederverwendbar — benenne sie, und sie wird zur Sicht für das ganze Team.
  5. Grenzen setzen: rekursive oder unbeschränkte Joins brauchen ein Limit, sonst wird die Auswertung teuer.

Beispiel: offene Aufgaben je Projekt zählen

[:find ?projekt (count ?task)
 :where
 [?task "type" "task"]
 [?task "status" "offen"]
 [?task "projekt" ?projekt]]
;; ein Report: pro Projekt die Zahl offener Aufgaben

Vorher/Nachher — Simple Query vs. Datalog

FähigkeitSimple QueryDatalog
Kriterieneine Propertybeliebig viele
Über Blöcke verbindenneinja (Join über Variablen)
Ableiten / aggregierenneincount··sum··group
Wiederverwendbarals Sichtals benannte Regel
LernkurveMinutensteiler, dafür mächtiger

Ehrliche Frage

Wie viele Deiner Reports baust Du jede Woche neu, weil sie mehrere Kriterien verbinden, die keine Filterzeile fassen kann? Die Antwort entscheidet, ob sich die steilere Lernkurve von Datalog für Dich auszahlt — oder ob eine Simple Query schon reicht.

Beschreib, was zählt — den Rest rechnet mium.

Eine Regel, und Dein Zweitgehirn baut den Report — und hält ihn aktuell, während Du denkst. Kein Export, kein Zusammenklicken; ein Begleiter, der Deine Kriterien versteht.

Slot sichern··kostenlos →
SOP-ADVANCED-QUERY-DATALOG-1.0··Falktron GmbH, Oelde
Die Frühjahrsschule ist vorbei. Tag 93 ansehen → Das Spiel starten →