1
我想從我的數據庫,在那裏達到結束日期日期時間comparaison主義的QueryBuilder
$em = $this->getEntityManager();
$qb = $em->createQueryBuilder('f');
$qb->delete('AcmeMyBundle:FlowerEntity');
$qb->where($qb->expr()->lte('f.endingDate', ':now'));
$qb->setParameter('now', new \DateTime('now'));
return $qb->getQuery()->getResult();
我得到
[Syntax Error] line 0, col 57: Error: Expected end of string, got 'f'
我嘗試過很多辦法,但遺憾的是沒有取得多大成功錯誤刪除的所有條目..任何線索?謝謝 !基於NHG
解復
$em = $this->getEntityManager();
$qb = $em->createQueryBuilder();
$qb->delete('AcmeMyBundle:FlowerEntity', 'f');
$qb->where($qb->expr()->lte('f.endingDate', ':now'));
$qb->setParameter('now', new \DateTime('now'));
return $qb->getQuery()->getResult();
endingDate也是一個dateTime,我怎麼能改變這一個字符串?我已經嘗試f.endingDate->格式(..)在查詢中,但它拋出預期的參數1是對象布爾給定(它看起來很髒我猶豫要試試這個哈哈) – oligan 2014-10-03 14:16:01
@oligan我更新了我的答案。 – NHG 2014-10-03 14:37:51
不錯,我也更新了我的答案。 thanksss – oligan 2014-10-03 14:48:47