PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

Как да използвам case-when в Ecto Queries в elixir?

Както се казва в коментара, можете да използвате fragment/1 :

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

Ако искате да посочите таблицата, това работи за мен:

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как да търся диапазон от цели числа в PostgreSQL?

  2. как да настроя командата psql в cygwin?

  3. Не може да се свърже с Postgres чрез PHP, но може да се свърже от командния ред и PgAdmin на друга машина

  4. Името на колоната PL/pgSQL е същото като променливата

  5. използвайте \set променлива вътре в блока за деклариране на plpgsql