質問

PDO_MYSQLでDoctrine 2を使用しています。そのクエリを照会したいと思います。

SELECT DISTINCT DATE_FORMAT(FROM_UNIXTIME(time), '%M %Y')
FROM Project\Posts
GROUP BY time

だから私はそれを試しました:

    $q = $em->createQuery("SELECT DISTINCT DATE_FORMAT(FROM_UNIXTIME(time), '%M %Y') FROM Project\Posts GROUP BY time");
    $r = $q->getResult();
    print_r($r);

しかし、私はこのエラーを取得します:

Fatal error: Uncaught exception 'Doctrine\ORM\Query\QueryException' with message '[Syntax Error] line 0, col 16: Error: Expected known function, got 'DATE_FORMAT''

では、どうすればそのクエリを照会できますか?

役に立ちましたか?

解決

この場合、ORMをバイパスしてDBAL層で作業する必要があります。マッピングをしていないためです。

$stmt = $dbal->execute('SQL (not DQL!) here');
$dates = $stmt->fetchAll();
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top