我可以在CakePHP中重新创建以下MySQL查询吗?

时间:2012-02-08 11:06:51

标签: mysql cakephp join cakephp-1.3

我正在尝试在CakePHP中实现此查询(1.3,如果这是相关的):

select * from releases r join formats f on r.id = f.release_id
    where r.default_upc = f.bar_code

我希望我能在Release模型中做一些事情,如:

    var $hasOne = array('Format'=>array(
        'conditions' => array('Release.default_upc'=>'Format.bar_code')
    ));

不幸的是,这只会导致null格式;显然,'Format.bar_code'在查询时尚未可用。

获得我想要的结果的最快途径是什么?

2 个答案:

答案 0 :(得分:1)

嗯,确实只是将条件改为

'conditions' => array('Release.default_upc = Format.bar_code')

可能会引出我寻求的结果。这是一种习惯性的蛋糕做事方式吗?

答案 1 :(得分:0)

据我所知,在cakePHP中使用JOINS的条件应该像在你提供的答案中那样进行。
在发生之前发生了好几次 第一种方法应该在模型本身和“常规”查找调用中使用。