sql >> Databasteknik >  >> RDS >> Mysql

Doctrine 2 DQL CASE WHEN in Count

Jag hittade den själv efter timmar av försök och sökning, den fungerar med denna DQL:

$dql = 'SELECT t, SUM(CASE WHEN p.image = 1 THEN 1 ELSE 0 END) AS numImage
                    FROM Bundle\Entity\Turn t
                    JOIN t.pois p
                    GROUP BY t.id
                    ORDER BY numImage DESC;  

Viktigt att du måste använda SUM istället för COUNT



  1. Hur får jag textinnehåll från BLOB i Oracle SQL

  2. SQL Server 2017 Steg för steg Installation -2

  3. Begränsa en kolumn till att endast acceptera två värden

  4. Hur man skapar en användare och beviljar behörigheter i Oracle