簡體   English   中英

DQL / SQL GROUP BY MONTH()

[英]DQL/SQL GROUP BY MONTH()

是否可以將僅日期作為列的GROUP BY month? 這可以通過PHP循環來實現,但我更喜歡使用SQL。 實時代碼如下:

    $query = $this->em
            ->createQuery("SELECT Month(p.planDate), SUM(ROUND(p.ndata5/1000)) AS volume "
                    . "FROM NTPBundle:ParagonData p WHERE p.planDate >= :startDate AND p.ndata5<>0 GROUP BY Month(p.planDate) ORDER BY p.planDate")
            ->setParameter('startDate', $this->startDate->format('Y-m-d'));

正確排序,您必須先命名,然后選擇ORDER BY此名稱,例如:

 $query = $this->em
            ->createQuery("SELECT Month(p.planDate) as monthPlan, SUM(ROUND(p.ndata5/1000)) AS volume "
                    . "FROM NTPBundle:ParagonData p WHERE p.planDate >= :startDate AND p.ndata5<>0 "
                    . "GROUP BY monthPlan "
                    . "ORDER BY p.planDate")
            ->setParameter('startDate', $this->startDate->format('Y-m-d'));

謝謝線索

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM