Php 带日期的Symfony2/Doctrine2 SQL Select子句

Php 带日期的Symfony2/Doctrine2 SQL Select子句,php,mysql,doctrine,Php,Mysql,Doctrine,我将Symfony2与Doctrine2一起使用,并尝试选择一周的第一天和最后一天。如何在查询的选择部分使用日期添加到聚合值 $qb = $this->createQueryBuilder( 'r' ); $query = $qb->select( [ "COUNT(r.id) as events_amount", "MAX(r.eventDate) AS event_date"

我将Symfony2与Doctrine2一起使用,并尝试选择一周的第一天和最后一天。如何在查询的选择部分使用日期添加到聚合值

$qb     = $this->createQueryBuilder( 'r' );
$query  = $qb->select( [
                        "COUNT(r.id) as events_amount",
                        "MAX(r.eventDate) AS event_date",
                        "DATE ( DATE_ADD ( r.eventDate, INTERVAL( 1 - DAYOFWEEK(r.eventDate) ) DAY ) ) as start_of_week",
                        "DATE ( DATE_ADD ( r.eventDate, INTERVAL( 7 - DAYOFWEEK(r.eventDate) ) DAY ) ) as end_of_week",
                        "WEEK (STR_TO_DATE(r.eventDate, '%Y-%m-%d'))) as week_number"
                      ] )
            ->where( "STR_TO_DATE(r.eventDate, '%Y-%m-%d') BETWEEN :start_date AND :end_date")
            ->groupBy( 'week_number' )
            ->orderBy( 'event_date', 'ASC' )
            ->setParameter('start_date', $start_date->format( 'Y-m-d' ))
            ->setParameter('end_date', $end_date->format( 'Y-m-d' ));
现在我得到了这样的回答:

"[Syntax Error] line 0, col 96: Error: Expected known function, got 'INTERVAL'"