PhalconPHP 无法解析我的查询

PhalconPHP can not parse my query

SELECT * FROM
(SELECT post.* FROM post ORDER BY post.timestamp DESC) as post
GROUP BY post.topic_id
ORDER BY post.timestamp DESC, post.position
LIMIT 15

Phalcon 在尝试执行上述查询时抛出以下错误。查询本身在默认 sql 下工作正常。

Syntax error, unexpected token (, near to ' SELECT post.* FROM post ORDER BY post.timestamp DESC ) as post GROUP BY post.topic_id ORDER BY post.timestamp DESC, post.position LIMIT 15', when parsing: SELECT * FROM ( SELECT post.* FROM post ORDER BY post.timestamp DESC ) as post GROUP BY post.topic_id ORDER BY post.timestamp DESC, post.position LIMIT 15 (162)

使用以下 PHP-代码(用于测试):

$sql = <<< QUERY
    *query*
QUERY;

$query = $this->modelsManager->createQuery($sql);
$result = $query->execute();

感谢您的帮助。

  1. 创建视图,以保持已经反向排序的虚拟table:

    CREATE VIEW v_latest_posts AS SELECT * FROM post ORDER BY timestamp DESC

  2. 使用 select 中的视图:

    SELECT * 来自 v_latest_posts 分组 topic_id ORDER BY 时间戳降序,位置升序 限制 15