我有兩個型號的模塊擴展Zend_Db_Table_Abstract:加入與zend_db_table_abstract類Zend框架
class Departments_Model_Subpages extends Zend_Db_Table_Abstract
{
protected $_name = 'bktg_departments_subpages';
protected $_primary = 'id';
}
class Departments_Model_Departments extends Zend_Db_Table_Abstract
{
protected $_name = 'bktg_departments';
protected $_primary = 'id';
}
通過文檔閱讀,我想要做的就是這樣的事情(顯然,錯誤的):
$depTable = new Departments_Model_Departments();
$subTable = new Departments_Model_Subpages();
$depQuery = $depTable->select()->setIntegrityCheck(false)
->from($depTable, array('id', 'title'))
->join($subTable, array('COUNT(id) as `count`'))
->where('bktg_departments.id = bktg_departments_subpages.parent_id');
我錯過了什麼?我只是無法將我的頭圍繞Zend加入,而我正在考慮我最終會寫出直接的sql。
謝謝你看看。
編輯
這裏就是我與現在的工作:
$depQuery = $depTable->select()->setIntegrityCheck(false)
->from($depTable, array('id', 'title'))
->joinLeft($subTable, 'bktg_departments.id = bktg_departments_subpages.parent_id', array('COUNT(id) as count'))
->order('id DESC')
->group('id');
爲我的作品的SQL:
SELECT bktg_departments.id, bktg_departments.title, count(bktg_departments_subpages.id) FROM bktg_departments left join bktg_departments_subpages on bktg_departments.id = bktg_departments_subpages.parent_id group by bktg_departments.id
,我有再生,在Zend的問題。
所以,我有我的參數混了?我非常感謝幫助。 因爲我可以將模型作爲對象傳遞,是否有將這些對象用作ON子句或者是否始終需要鍵入(例如,如果由於某種原因我重命名該表)。 – dbergunder
雖然這沒有按預期工作。我想計數subTable的匹配parent_id subTable ID的返回的ID。 – dbergunder