Ecto `case where` statement

I’m wondering if anyone can point me to any previous discussion around why ecto doesn’t have a case_where function? I know I can use fragment or create a macro (which I do!) but I’m just interested in the reasoning for not including it. Is it due to complexity around supporting multiple dbs or is it to discourage the use of it? Or something else?


My bet is that no-one spent time implementing that. However I am experimenting with implementing such functionality as a library:


Oh nice! Looks like it will be a useful library—I’m keeping an eye on it.

The README for this repo actually answers my question well enough :smile: