Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/hadoop/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQLSTATE[HY000]:ZF1中MySQL变量的一般错误_Mysql_Zend Framework_Fetchall - Fatal编程技术网

SQLSTATE[HY000]:ZF1中MySQL变量的一般错误

SQLSTATE[HY000]:ZF1中MySQL变量的一般错误,mysql,zend-framework,fetchall,Mysql,Zend Framework,Fetchall,我有一个MySQL查询,它在PhpMyAdmin中工作得非常好,但在Zend Framework 1.12及其fetchAll()方法中使用时抛出一个SQLSTATE[HY000]:一般错误。这是: SET @csum := 0; SELECT s1.Date, (@csum := @csum + s1.total) as cumulative_sum FROM ( SELECT c.datefield AS Date, IFNULL(SUM(subscription_total

我有一个MySQL查询,它在PhpMyAdmin中工作得非常好,但在Zend Framework 1.12及其
fetchAll()方法中使用时抛出一个
SQLSTATE[HY000]:一般错误。这是:

SET @csum := 0;
SELECT s1.Date, (@csum := @csum + s1.total) as cumulative_sum
FROM (
        SELECT c.datefield AS Date, IFNULL(SUM(subscription_total),0) AS total
        FROM subscription s
        RIGHT JOIN calendar c
        ON c.datefield = DATE(subscription_date)
        WHERE (c.datefield BETWEEN
            (SELECT MIN(DATE(subscription_date)) FROM subscription)
            AND
            NOW()
        )
        GROUP BY DATE
    ) AS s1
如果我删除
SET
语句,该语句不会返回任何错误,但我需要设置一个MySQL变量,否则
cumulative\u sum
将仅为
NULL
值。以下是该方法的代码:

public function findCumulativeCashflow($statut)
{
    $db = $this->_getDbTable();

    $dbAdapter = new Zend_Db_Adapter_Pdo_Mysql($db->getAdapter()->getConfig());

    $sql = '<SQL statement above>';

    $statement = $dbAdapter->query($sql);

    $rows = $statement->fetchAll();

    return $rows; 
}
公共函数findCumulativeCashflow($statut)
{
$db=$this->_getDbTable();
$dbAdapter=new Zend_Db_Adapter_Pdo_Mysql($Db->getAdapter()->getConfig());
$sql='';
$statement=$dbAdapter->query($sql);
$rows=$statement->fetchAll();
返回$rows;
}
错误指向
$rows=$statement->fetchAll()行,是否有另一种ZF方法用于
SET@var:=value

任何想法都将不胜感激。 谢谢

根据,我需要使用另一个查询,因为fetchAll()无法处理多个查询

因此,我需要使用
$dbAdapter->query('set@csum:=0;')设置MySQL变量然后执行主查询