簡體   English   中英

Zend Framework 2跨數據庫聯接

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM