如何在CakePHP 3中获得与表B中表A最接近的匹配

时间:2018-02-18 06:11:50

标签: php orm cakephp-3.0 cakephp-3.x

我试图逐行地与表A [bparties]中的表A [aparties]匹配,这是不相关的表,它们是不同的表,并希望获得与DateTime,A_Number,B_Number和Duration最接近的匹配。 / p>

当我尝试使用Cakephp3的约定时,它显示" Aparties与Bparties"使用" InvalidArgumentException"因为他们彼此没有关系。

Please check my Tables

结果应该是

Results

我试图得到一个结果

    $aparties = $this->loadModel('aparties');
    $bparties = $this->loadModel('bparties');


    $results = $aparties->find()
        ->select(['start_time', 'a_number', 'b_number', 'duration', 'b.start_time', 'b.a_number', 'b.b_number', 'b.duration'])
        ->hydrate(false)
        ->join([
            'table' => 'bparties',
            'alias' => 'b',
            'type' => 'inner', // Tried also with 'cross', 'left' but no luck
            'conditions' => [
                'b.b_number = aparties.b_number',
                'b.a_number = aparties.a_number',                    
            ]
        ]);

但是这匹配了几行,其中两个值都可用,但是当两个表中都有相同的b_number和a_number时,找不到最接近的数字。

感谢您的帮助和帮助提前指导我。

0 个答案:

没有答案