2012-07-05 5 views
0

이 SQL 쿼리를 DQL으로 변환하는 데 많은 어려움이 있습니다 (Symfony2를 사용하고 있습니다).이 SQL 쿼리를 DQL로 변환하는 방법은 무엇입니까?

SELECT d.* FROM Document d JOIN DocumentType dt ON dt.id = d.document_type_id WHERE (d.dateFinal - INTERVAL dt.renewal SECOND) > NOW();"

고마워요!

+0

[당신은 무엇을 시도?] (http://whathaveyoutried.com) –

+0

어떤 도움이 내 대답인가? 그렇지 않다면 어려움이 무엇인지 자세히 설명해야합니다. – Wolfram

답변

1
  • 대신 데이터베이스 필드는, 당신은 당신 DocumentDocumentType 클래스의 필드를 사용해야합니다.

  • join

    은 (d.documenttype 같은) 그 MySQL의 날짜 함수에 대한

  • 문서의 association field 이름을 지정하면됩니다 : 적어도 내가 아는 한, 당신은 custom DQL functions를 작성해야합니다. 이 링크 뒤에는 INTERVAL 함수의 예가 있습니다. 이것은 네이티브 SQL 쿼리를 대신 실행하려는 지점 일 수 있습니다.

SELECT d 
FROM MyProject\Model\Document d 
    JOIN d.documenttype 
WHERE [...your own DQL functions here...] 
관련 문제