在 CakePHP 中加入两个过滤器
Join with two filters in CakePHP
如何将左连接写入 CakePHP 2.5.2:
SELECT A.*, B.*, C.*
FROM A
JOIN B on A.id = B.a_id
JOIN c ON (c.b_id = b.id AND c.a_id = a.id)
如何使用查找模型方法将其写入包含数组中AND c.a_id=a.id
?
这应该有效:
$options['joins'] = array(
array('table' => 'table_b',
'alias' => 'B',
'type' => 'LEFT',
'conditions' => array(
'A.id = B.a_id',
)
),
array('table' => 'table_c',
'alias' => 'C',
'type' => 'LEFT',
'conditions' => array(
"C.b_id = B.id",
"C.a_id = A.id"
)
)
);
$ItemA->find('all', $options);
如需进一步参考,请参阅:
如何将左连接写入 CakePHP 2.5.2:
SELECT A.*, B.*, C.*
FROM A
JOIN B on A.id = B.a_id
JOIN c ON (c.b_id = b.id AND c.a_id = a.id)
如何使用查找模型方法将其写入包含数组中AND c.a_id=a.id
?
这应该有效:
$options['joins'] = array(
array('table' => 'table_b',
'alias' => 'B',
'type' => 'LEFT',
'conditions' => array(
'A.id = B.a_id',
)
),
array('table' => 'table_c',
'alias' => 'C',
'type' => 'LEFT',
'conditions' => array(
"C.b_id = B.id",
"C.a_id = A.id"
)
)
);
$ItemA->find('all', $options);
如需进一步参考,请参阅: