thinkphp where有多个条件进行复合查询,关系为or,代码如下

有两个条件进行复合查询,关系为or$where1=array('Key'=>array('like','zt'.'%'),'code'=>'02');$where2=ar... 有两个条件进行复合查询,关系为or
$where1=array(
'Key'=>array('like','zt'.'%'),
'code'=>'02'
);
$where2=array(
'modes'=>1,
'Key'=>array('like','tm'.'%'),
'code'=>'02'
);
//$where1与$where2为or,两者之内为and关系

$mysql=M('Mysql')->where(?)->select();
/*需要结果等同以下,要求一次查询
$mysql1=M('Odds')->where($where1)->select();
$mysql2=M('Odds')->where($where2)->select();
$mysql=array_merge($mysql1,$mysql2);
*/
展开
 我来答
learneroner
高粉答主

2015-05-03 · 关注我不会让你失望
知道大有可为答主
回答量:1.1万
采纳率:91%
帮助的人:6395万
展开全部

请参考thinkphp开发手册的查询语言一节,可以有不同写法,我这里写一种供你参考:

$where1=array(
    'Key'=>array('like','zt'.'%'),
    'code'=>'02'
);
$where=array(
    'modes'=>1,
    'Key'=>array('like','tm'.'%'),
    'code'=>'02',
    '_complex'=>$where1, // 复合查询
    '_logic'=>'or'       // 关系为or
);
// 查询语句
$mysql=M('Mysql')->where($where)->select();
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式