sql >> Database >  >> RDS >> PostgreSQL

Hoe gebruik ik case-when in Ecto Queries in elixer?

Zoals de opmerking al zei, kun je fragment/1 . gebruiken :

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

Als je de tabel wilt specificeren, werkt dit voor mij:

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


  1. Afhandeling van PostgreSQL-uitzonderingen

  2. Tabellen verwijderen uit database Oracle 10g

  3. Hoe maak je dynamisch een triggerfunctie in pgsql?

  4. Hoe DATE en TIME te scheiden van DATETIME in MySQL