2016-08-12 48 views
0

嘿,我有一个关于querybuilder的问题。学说querybuilder:参数BETWEEN prop1和prop2

I'm一个EntityRepository

在代码里找到所有从之间,并

public function getBySpan($from,$to) 
{ 

    $from = new \DateTime($from->format("Y-m-d")." 00:00:00"); 
    $to = new \DateTime($to->format("Y-m-d")." 23:30:00"); 
    $qb = $this->createQueryBuilder("e"); 
    $qb 
     ->andWhere('e.date BETWEEN :from AND :to') 
     ->setParameter('from', $from) 
     ->setParameter('to', $to) 
    ; 
    $result = $qb->getQuery()->getResult(); 

    return $result; 
} 

我尝试archieve是找到所有地方的$ date是e.from和e.to

之间
public function getByDate($date) 
{ 

    $date = new \DateTime($date->format("Y-m-d")." 00:05:50"); 
    $qb = $this->createQueryBuilder("e"); 
    $qb 
     /* HOW TO PUT THIS LINE TO WORK ? */ 
     ->andWhere(':date BETWEEN e.from AND e.to') 
     ->setParameter('date', $date) 
    ; 
    $result = $qb->getQuery()->getResult(); 

    return $result; 
} 

用于提前任何帮助的感谢

回答

1

我不是那么熟悉曲但你可以尝试这样的事情

->andWhere('e.from <= :date') 
->andWhere('e.to >= :date') 
->setParameter('date', $date); 

这是类似于你想要实现的东西。