我是cakephp的新手,我想将或,和以及之类的添加到我现有的查询中。
我想做出这样的条件
WHERE 'Message.user_id = Contact.user_id' AND 'Message.mobileNo LIKE'=>"%Contact.mobileNo" OR LIKE'=>"%Contact.homeNo" OR LIKE'=>"%Contact.workNo"
我的查询是
$this->bindModel(array(
'belongsTo' => array(
'Contact' => array(
'className' => 'Contact',
'foreignKey' => false,
'conditions' => array(
'Message.user_id = Contact.user_id',
'Message.mobileNo = Contact.mobileNo'
),
'type' => 'inner'
)
)
), false);
$this->find('all', array('conditions' => array(),
'fields' => array('DISTINCT mobileNo')));
答案 0 :(得分:1)
您可以在现有查询中使用以下内容。
$this->find('all', array(
'conditions' => array(
'OR' => array(
array(
"Message.mobileNo LIKE" => "%Contact.mobileNo",
),
array(
"Message.mobileNo LIKE" => "%Contact.homeNo",
),
array(
"Message.mobileNo LIKE" => "%Contact.workNo",
)
)
),
'fields' => array('DISTINCT mobileNo')
));
答案 1 :(得分:0)
你可以使用:for“like”
$这 - >后>发现( “所有”,阵列( '状态'=>阵列(“作者 LIKE'=> “中的广告%”)));
上面的查询会向您提供表格帖子中的数据,其中作者姓名以“ad”开头。
表示“或”
$这 - >后>发现( “所有”,阵列( '状态'=>阵列( “OR”=>阵列(“作者 LIKE'=>“ad%”,'作者LIKE'=>“bo%”))));
上面的查询将为您提供表格帖子中的数据,其中作者姓名以“ad”或“bo”
开头此blog帖子对您也有用!