Doctrine 2 DQL CASE WHEN IN COUNT

KhorneHoly

私はネイティブMySQLコードでこのクエリを持っています

SELECT *
FROM `turn`
LEFT JOIN (
    poi
) ON ( turn.id = poi.turn_id )
GROUP BY turn.id
ORDER BY count( case when poi.image = 1 then 1 else null end) DESC;

Doctrine 2DQLでこれを再構築する必要があります

これまでの私の試みはこれです:

SELECT t, COUNT((CASE WHEN Bundle\Entity\Poi p.image = 1 then 1 ELSE NULL END)) AS num
FROM Bundle\Entity\Turn t
JOIN t.pois p
GROUP BY t.id
ORDER BY num DESC

そして、私はこのエラーを取得しています:

An exception has been thrown during the rendering of a template ("[Syntax Error] line 0, col 99: Error: Expected end of string, got '.'") in Bundle:Admin:showTurnsFiltered.html.twig at line 75.

私は何が間違っているのですか?

KhorneHoly

何時間も試したり検索したりした後、自分で見つけました。この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;  

COUNTの代わりにSUMを使用する必要があることが重要です

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Doctrine DQL WHERE with CASE?

分類Dev

casting boolean type with doctrine 2 DQL

分類Dev

DQL、Doctrine ORMでcount(*)SQLを書く方法

分類Dev

Symfony 2 Doctrine COUNT

分類Dev

Doctrine 2 select count groupBy

分類Dev

Doctrine2 error "Expected known function, got 'COUNT'" when in order by clause

分類Dev

Doctrine2エラー "Expected know function、got'COUNT '" when order byclause

分類Dev

Doctrine - COUNT rows when a HAVING clause is used

分類Dev

Conditional count using CASE WHEN

分類Dev

Doctrine 2DQLでISNULLと:valueを組み合わせる

分類Dev

Doctrine DQL WHERE(condition1 and condition2)OR(condition3 and condition4)

分類Dev

Doctrine DQLクエリ内でのCOLLATEの使用(Symfony2)

分類Dev

複雑なDoctrine2DQLクエリの作成

分類Dev

Doctrine DQL: how to get expression to inversed side

分類Dev

SQLServerのDoctrine2で、DQLクエリのLockModeを変更する方法

分類Dev

SQL - how to count unique within case when?

分類Dev

Doctrine2 , get entities order by count of a many to many property

分類Dev

PagerfantaとDoctrine2COUNTの最適化

分類Dev

Zend Framework2を使用してDoctrine2にカスタムDQL関数を追加する方法

分類Dev

Doctrine Distinct Count

分類Dev

Doctrine select count if

分類Dev

Get name when user_type=1 and active=TRUE in DQL at Symfony2 Form

分類Dev

Doctrine2DQLはOracleLIMITとOFFSETをどのようにシミュレートしますか?

分類Dev

MySQL関数st_withinと同等のDoctrine2DQL関数とは何ですか

分類Dev

Doctrine paginator not working with count in querybuilder

分類Dev

Symphony 2DQLクエリ

分類Dev

SELECT CASE、COUNT(*)

分類Dev

Are there any additional benefits to using the default repository find methods over DQL in Doctrine?

分類Dev

How can I call homemade SQL function properly in symfony2.0 doctrine 2.2 with DQL?

Related 関連記事

  1. 1

    Doctrine DQL WHERE with CASE?

  2. 2

    casting boolean type with doctrine 2 DQL

  3. 3

    DQL、Doctrine ORMでcount(*)SQLを書く方法

  4. 4

    Symfony 2 Doctrine COUNT

  5. 5

    Doctrine 2 select count groupBy

  6. 6

    Doctrine2 error "Expected known function, got 'COUNT'" when in order by clause

  7. 7

    Doctrine2エラー "Expected know function、got'COUNT '" when order byclause

  8. 8

    Doctrine - COUNT rows when a HAVING clause is used

  9. 9

    Conditional count using CASE WHEN

  10. 10

    Doctrine 2DQLでISNULLと:valueを組み合わせる

  11. 11

    Doctrine DQL WHERE(condition1 and condition2)OR(condition3 and condition4)

  12. 12

    Doctrine DQLクエリ内でのCOLLATEの使用(Symfony2)

  13. 13

    複雑なDoctrine2DQLクエリの作成

  14. 14

    Doctrine DQL: how to get expression to inversed side

  15. 15

    SQLServerのDoctrine2で、DQLクエリのLockModeを変更する方法

  16. 16

    SQL - how to count unique within case when?

  17. 17

    Doctrine2 , get entities order by count of a many to many property

  18. 18

    PagerfantaとDoctrine2COUNTの最適化

  19. 19

    Zend Framework2を使用してDoctrine2にカスタムDQL関数を追加する方法

  20. 20

    Doctrine Distinct Count

  21. 21

    Doctrine select count if

  22. 22

    Get name when user_type=1 and active=TRUE in DQL at Symfony2 Form

  23. 23

    Doctrine2DQLはOracleLIMITとOFFSETをどのようにシミュレートしますか?

  24. 24

    MySQL関数st_withinと同等のDoctrine2DQL関数とは何ですか

  25. 25

    Doctrine paginator not working with count in querybuilder

  26. 26

    Symphony 2DQLクエリ

  27. 27

    SELECT CASE、COUNT(*)

  28. 28

    Are there any additional benefits to using the default repository find methods over DQL in Doctrine?

  29. 29

    How can I call homemade SQL function properly in symfony2.0 doctrine 2.2 with DQL?

ホットタグ

アーカイブ