2012-04-12 2 views
0

Я должен следующие таблицы:Doctrine 2. Как рассчитать разницу между двумя полями датой и временем в QueryBuilder

Registration 
    id int 
    created datetime 

Activity 
    id int 
    startdate datetime 

Теперь я хочу, чтобы добавить это условие в мой SQL запрос:

(Registration.created + 7 days) <= Activity.startdate 

Как можно Я делаю это в Доктрине 2? Я предпочитаю независимое от базы данных решение.

ответ

3

DATE_SUB было решением. Я использовал его с доктриной 2.1.

$EntityManager->createQueryBuilder()->expr()->gte("r.created", "DATE_SUB(a.startDate, 7, 'day')")