Zend framework Zend Db选择将子查询添加到源部件
我尝试使用Zend_Db_Select在FROM部分构建一个带有子查询的查询。我在找这样的东西:Zend framework Zend Db选择将子查询添加到源部件,zend-framework,zend-db,Zend Framework,Zend Db,我尝试使用Zend_Db_Select在FROM部分构建一个带有子查询的查询。我在找这样的东西: SELECT COUNT(row_1) AS count_row FROM (SELECT row,row2,... FROM table WHERE row= ...) AS temp WHERE row = 0) $oSubSelect = $this->select() ->setIntegrityChe
SELECT COUNT(row_1) AS count_row FROM (SELECT row,row2,... FROM table WHERE row= ...) AS temp WHERE row = 0)
$oSubSelect =
$this->select()
->setIntegrityCheck(false)
->from('table',
array(
'row_id'
)
)
->where(PRFX.'table.id = '.PRFX.'table2.id')
->from(PRFX.'table2',array('row','row2'));
$this->select(false)
->setIntegrityCheck(false)
->from(new Zend_Db_Expr($oSubSelect).' AS temp',
array(
'COUNT(row_id) AS row_count',
)
);
所以我试着这样做:
SELECT COUNT(row_1) AS count_row FROM (SELECT row,row2,... FROM table WHERE row= ...) AS temp WHERE row = 0)
$oSubSelect =
$this->select()
->setIntegrityCheck(false)
->from('table',
array(
'row_id'
)
)
->where(PRFX.'table.id = '.PRFX.'table2.id')
->from(PRFX.'table2',array('row','row2'));
$this->select(false)
->setIntegrityCheck(false)
->from(new Zend_Db_Expr($oSubSelect).' AS temp',
array(
'COUNT(row_id) AS row_count',
)
);
但这给了我一个错误信息。
致以最良好的祝愿。好的,我会解决这个问题。问题出在
->from(new Zend_Db_Expr($oSubSelect).' AS temp',
应该是:
->from(new Zend_Db_Expr('('.$oSubSelect.')'),