[英]Zend Framework 2 cross database joins
有什么真正的方法可以在zf2 select語句中進行跨數據庫聯接? 我一直在尋找一種可行的方法來執行此操作,而不必訴諸編寫完整的sql語句。
目前,我的查詢看起來像這樣:
$selectDB2 = $this->getSelect('db2.tabledb2');
$selectDB = $this->getSelect('field1');
$selectDB->join(
['tabledb2' => $selectDB2],
'tabledb1.id = tabledb2.id',
[],
$select::JOIN_LEFT. ' '. $select::JOIN_OUTER
);
經過研究,我發現ZF2確實存在問題: https : //github.com/zendframework/zf2/issues/4307
問題是zf2轉義引號和列出解決方案的方式。 但是,理想情況下,我希望采用一種無需修改zf2庫本身的方法,並且也不需要我必須編寫一個冗長的sql語句(因為這不是此查詢范圍的可行選擇)。
解決了。 ZF2的TableIdentifier很好地解決了這個問題。 這樣可以非常干凈有效地解決所有問題。
$selectDB2 = $this->getSelect(new TableIdentifier('tabledb2', 'db2'));
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.