Comment utiliser "intervalle" dans Doctrine2 Générateur de Requêtes

Dans mon Symfony2 référentiel, j'aimerais obtenir des objets à partir d'un calendrier de table, qui ont commencé, mais pas encore terminé. L'intervalle, dans les objets doivent être rencontrées comme "pas fini", doit être passé comme une variable.

À l'aide de la plaine SQL, il fonctionne comme ceci:

SELECT * FROM slots rbs 
  WHERE rbs.rundate = '2012-08-13' 
  AND rbs.runtime <= '11:05:00' 
  AND '11:05:00' <= rbs.runtime + interval '300 seconds'
  ORDER BY rbs.rundate DESC, rbs.runtime DESC

Puis-je obtenir le même avec DQL /Query Builder?

C'est ce que j'ai à ce jour:

$qb = $this->createQueryBuilder('rbs');
$qb->where(
    $qb->expr()->andX(
         $qb->expr()->eq('rbs.rundate', ':date'),
         $qb->expr()->lte('rbs.runtime', ':time'),
         'rbs.runtime + interval 300 seconds >= :time'
        )
    )
  ->orderBy('rbs.rundate', 'DESC')
  ->addOrderBy('rbs.runtime', 'DESC')
  ->setParameter('date', date('Y-m-d'))
  ->setParameter('time', date('H:i:s'))

Mais cela renvoie l'erreur suivante:

[Doctrine\ORM\Query\QueryException]                                                 
[Syntax Error] line 0, col 139: Error: Expected =, <, <=, <>, >, >=, !=, got '300'

J'ai trouvé que "intervalle" n'est pas pris en charge par Doctrine2 /DQL, qui est également mentionné ici.

Des suggestions sur la façon d'accomplir ceci avec Doctrine2 du Générateur de Requête ou DQL (et en passant à l'intervalle de la variable)?

OriginalL'auteur mediafreakch | 2012-08-13