CodeIgniter로 작성된 간단한 웹 응용 프로그램을 Symfony2 번들로 이식하고 있습니다. 나는 Symfony2와 Doctrine을 처음 접했고 한 SQL 쿼리에 문제가있어 DQL로 다시 작성하려고합니다. 필자는 모두 번들로 준비했고, Entity 클래스를 만들었고 데이터베이스에 데이터를 삽입하고 Symfony2가 제공하는 객체 지향 프로그래밍 방식으로 간단한 쿼리를 수행 할 수있었습니다.SQL 함수가있는 Doctrine DQL 쿼리
$sql = "SELECT * FROM t WHERE
UNIX_TIMESTAMP(t.date) > ".(time()-300)." AND
ROUND(t.x,3) = ".round($x, 3);
는 데이터베이스 서버에서 실행해야하는 일부 SQL 함수 호출이있다 볼 수 있듯이 : 불행히도, 난 어떻게 DQL이 SQL 쿼리를 구현하는 방법을 모르겠어요. 교리는이 전화를 이해할 수 없습니다. 물론, Doctrine을 사용하지 않고 Symfony2 번들 내에서 기본 PDO를 사용하여이 쿼리를 수행 할 수있는 옵션이 있지만 Symfony2와 Doctrine을 최대한 활용하고 싶습니다.
$em->createQuery("SELECT t FROM MyTestBundle:MyEntity t WHERE t.x = :x")
->setParameter("x", round($x,3));
하지만 내 새로운 번들로 이전 응용 프로그램에서 내 SQL 쿼리를 재 작성 할 수있는이 필수입니다 : 그래서 나는이 OOP 방법이나 뭔가를 이해 영리 DQL 쿼리를 사용하여 수행하고 싶습니다. 제발, 내가 맞는 해결책을 찾도록 도와주세요.