|
|
|
|
|
by xi
1649 days ago
|
|
This is pretty close to how my Julia library [0] for composable construction of SQL queries works: From(foo) |>
Where(Get.value .< 10) |>
Join(From(bar) |> As(:bar), on = Get.bar.id .== Get.bar_id) |>
Where(Get.bar.other_value .> 20) |>
Select(Get.group, Get.value) |>
Group(Get.group) |>
Where(Agg.sum(Get.value) .> 100) |>
Order(Get.group)
There is no HAVING and the you can use any tabular operators in any order. Aggregates are also separated from grouping and can be used in any context after Group is applied.[0] https://github.com/MechanicalRabbit/FunSQL.jl |
|