sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Cómo usar case-when en Ecto Queries en elixir?

Como decía el comentario, puedes usar fragment/1 :

query = from t in <Model>, select: fragment("SUM(CASE WHEN status = ? THEN 1 ELSE 0 END)", 2)

Si desea especificar la tabla, esto funciona para mí:

query = from t in <Model>, select: fragment("SUM(CASE WHEN ? = ? THEN 1 ELSE 0 END)", t.status, 2)