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.