QuackDB.Ecto.Conditionals (quackdb v0.5.3)

Copy Markdown View Source

Conditional expression helpers for Ecto analytical queries.

case_when/1 keeps multi-branch SQL CASE WHEN expressions readable while preserving normal Ecto operators inside each condition:

use QuackDB.Ecto

from event in "events",
  select: %{
    tier:
      case_when do
        event.score >= 90 -> "high"
        event.score >= 50 -> "medium"
        true -> "low"
      end
  }

The expression compiles to DuckDB CASE WHEN ... THEN ... ELSE ... END.

Summary

Functions

case_when(list)

(macro)