Doctrine: Comment récupérer cette requête?
-
29-09-2019 - |
Question
J'utilise Doctrine 2 avec PDO_MYSQL et je veux interroger cette requête:
SELECT DISTINCT DATE_FORMAT(FROM_UNIXTIME(time), '%M %Y')
FROM Project\Posts
GROUP BY time
Alors j'ai essayé que:
$q = $em->createQuery("SELECT DISTINCT DATE_FORMAT(FROM_UNIXTIME(time), '%M %Y') FROM Project\Posts GROUP BY time");
$r = $q->getResult();
print_r($r);
Mais je reçois cette erreur:
Fatal error: Uncaught exception 'Doctrine\ORM\Query\QueryException' with message '[Syntax Error] line 0, col 16: Error: Expected known function, got 'DATE_FORMAT''
Alors, comment pourrais-je interroger cette requête?
La solution
Dans ce cas, vous devez contourner ORM et le travail sur la couche DBAL, parce que vous n'êtes pas faire une application.
$stmt = $dbal->execute('SQL (not DQL!) here');
$dates = $stmt->fetchAll();
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow