我正在使用CakePHP 2.4。
我在数据库中有两个表,table1.num
和 **table2.num
,我需要通过连接查询在它们之间建立联系。
table1.num
有前缀DA
,如DA-12929
,table2.num
有前缀DB
,如DB-12929
。
在我的应用程序中,我有一个类似
option = array(
'recursive' => -1,
'fields' => array('Table1.*', 'Table2.*'),
'joins' => array(
array('table' => 'table2',
'alias' => 'Table2',
'type' => 'INNER',
'conditions' => array(
'Tabe1.num = Table2.num',
),
),
),
);
如何在没有前缀的情况下在它们之间建立联系?
嗨,我找到了一个解决方案,我只是添加子字符串
option = array(
'recursive' => -1,
'fields' => array('Table1.*', 'Table2.*'),
'joins' => array(
array('table' => 'table2',
'alias' => 'Table2',
'type' => 'INNER',
'conditions' => array(
'SUBSTRING(Tabe1.num,4) = SUBSTRING(Table2.num,4)',
),
),
),
);