Php 未在phalcon中执行MySQL查询

Php 未在phalcon中执行MySQL查询,php,mysql,phalcon,Php,Mysql,Phalcon,使用phalcon框架 此mysql查询的目的是返回最近1天内论坛上的评论数: SELECT fc.forum_id, count( fc.forum_id ) AS total_comments FROM forum_comments AS fc WHERE DATE_SUB( CURDATE( ) , INTERVAL 1 DAY ) <= fc.updated_at GROUP BY fc.forum_id ORDER BY total_comments DESC LIMIT 0 ,

使用phalcon框架

此mysql查询的目的是返回最近1天内论坛上的评论数:

SELECT fc.forum_id, count( fc.forum_id ) AS total_comments
FROM forum_comments AS fc
WHERE DATE_SUB( CURDATE( ) , INTERVAL 1
DAY ) <= fc.updated_at
GROUP BY fc.forum_id
ORDER BY total_comments DESC
LIMIT 0 , 30
选择fc.forum\u id,将(fc.forum\u id)计算为总评论
来自论坛(论坛)的评论为fc
其中DATE_SUB(CURDATE(),间隔1
天)createQuery($sql);
$staff=$query->execute()->toArray();

如果有其他方法可以做到这一点?

您的查询是正确的,可以在4.1到5.6.6的MySQL版本上正常工作。因此,
createQuery()
方法似乎正在尝试解析查询,但在
INTERVAL
子句上失败。我建议您尝试以下方式:

$yesterday = date('Y-m-d', strtotime("-1 days"));

$sql = "SELECT fc.forum_id,count(fc.forum_id)as total_comments ".
            "FROM ForumComments as fc ".
            "WHERE '$yesterday' <= fc.updated_at ".
            "GROUP BY fc.forum_id ".
            "ORDER BY total_comments DESC ";

$query = $this->modelsManager->createQuery($sql);
$staff = $query->execute()->toArray();
$dayed=date('Y-m-d',strottime('1天”);
$sql=“选择fc.论坛id,将(fc.论坛id)计算为总评论”。
“来自论坛评论作为fc”。

“其中,'$Dayed'您的查询是正确的,并且在4.1到5.6.6的MySQL版本上运行良好。因此,
createQuery()
方法似乎正在尝试解析查询,但在
INTERVAL
子句上失败。我建议您尝试以下操作:

$yesterday = date('Y-m-d', strtotime("-1 days"));

$sql = "SELECT fc.forum_id,count(fc.forum_id)as total_comments ".
            "FROM ForumComments as fc ".
            "WHERE '$yesterday' <= fc.updated_at ".
            "GROUP BY fc.forum_id ".
            "ORDER BY total_comments DESC ";

$query = $this->modelsManager->createQuery($sql);
$staff = $query->execute()->toArray();
$dayed=date('Y-m-d',strottime('1天”);
$sql=“选择fc.论坛id,将(fc.论坛id)计算为总评论”。
“来自论坛评论作为fc”。

“其中,'$Dayed'看起来有一个查询解析错误。我会点击phalcon doco查找查询解析的相关信息,看起来好像有查询解析错误。我会点击phalcon文档来了解查询解析