DoctrineExtensions 유용한 MySQL 기능을 구현하는 모듈을 찾았습니다. 하지만 내 문제는 일반적인 문제라고 생각합니다. 함수에 다른 mysql 표현식을 매개 변수로 전달하는 방법은 무엇입니까?Doctrine 2 QueryBuilder의 DQL - 중첩 표현식 및 함수
은 내가 DATETIME
와 INT
입니다 lifespan
는 2 열 updated_at
이 있다면 나는, 내가이 작업을 수행 할 수있는 개체의 수명이 만료 된 여부를 조회하고 싶었다;
WHERE 0 > TIMESTAMPDIFF(SECONDS, NOW(), e.updated_at + INTERVAL e.lifespan SECOND)
이 경우 QueryBuilder에서 이와 유사합니다.
$qb->andWhere('0 > TIMESTAMPDIFF(SECONDS, CURRENT_TIMESTAMP(), e.updated_at + INTERVAL e.lifespan SECOND)');
하지만 닫기 괄호 대신 더하기 기호를 기대하고 있기 때문에 파서는 + INTERVAL e.lifespan SECOND
을 좋아하지 않는다.