0

したがって、Zend_db_selectにはメソッドがあります

  `joinUsing(table, join, [columns]) and joinInnerUsing(table, join, [columns])`

  `joinLeftUsing(table, join, [columns])`

  `joinRightUsing(table, join, [columns])`

  `joinFullUsing(table, join, [columns])`

しかし、3つ以上のテーブルを結合したい場合はどうなりますか(多対多の関連付けなど)...例:このクエリ:

 SELECT * FROM (j LEFT JOIN e ON j.id = e.eee) LEFT JOIN w ON w.www = e.id

zend_db_selectでこれをどのように実行しますか

4

2 に答える 2

0

サブクエリとZend_Db_Exprを使用してみてください。詳細はこちらをご覧ください

于 2011-02-07T06:01:05.640 に答える
0

やってみてください...しかし、私は2つのフィールドで動作するかどうかはわかりませんが、3つのフィールドで試していません

$dbmodel->select(false)
    ->setIntegrityCheck(false)
    ->from(array('t1' => 'table1'))
    ->joinLeft(array('t2' => 'table2'),                                             
        't1.somefeild = t2.somefeild')
    ->joinLeft(array('t3' => 'table3'),                                             
        't2.somefeild = t3.somefeild')

クエリを作成しようとします。また、次の方法でクエリを確認できます。die((string)$select)

于 2011-02-07T06:16:17.133 に答える