Thinkphp 查询条件 and 和 or同时使用即复合查询
thinkphp 3.2快捷查询OR查询&分割表示AND查询讲解
快捷查询方式是一种多字段查询的简化写法,可以进一步简化查询条件的写法,在多个字段之间用|分割表示OR查询,用&分割表示AND查询,可以实现下面的查询,例如:
一、不同字段相同的查询条件
$User = M("User"); // 实例化User对象
$map['name|title'] = 'thinkphp';
// 把查询条件传入查询方法
$User->where($map)->select();
上面的查询其实可以等效于
$User = M("User"); // 实例化User对象
$map['name'] = 'thinkphp';
$map['title'] = 'thinkphp';
$map['_logic'] = 'OR';
// 把查询条件传入查询方法
$User->where($map)->select();
查询条件就变成 name= 'thinkphp' OR title = 'thinkphp'
二、不同字段不同的查询条件
$User = M("User"); // 实例化User对象
$map['status&title'] =array('1','thinkphp','_multi'=>true);
// 把查询条件传入查询方法
$User->where($map)->select();
上面的查询等效于:
$User = M("User"); // 实例化User对象
$map['status'] = 1;
$map['title'] = 'thinkphp';
// 把查询条件传入查询方法
$User->where($map)->select();
'_multi'=>true必须加在数组的最后,表示当前是多条件匹配,这样查询条件就变成 status= 1 AND title = 'thinkphp'
,查询字段支持更多的,例如:
$map['status&score&title'] =array('1',array('gt','0'),'thinkphp','_multi'=>true);
等效于:
$map['status'] = 1;
$map['score'] = array('gt',0);
$map['title'] = 'thinkphp';
查询条件就变成 status= 1 AND score >0 AND title = 'thinkphp'
注意:快捷查询方式中“|”和“&”不能同时使用。
Thinkphp 查询条件 and 和 or同时使用即复合查询的更多相关文章
- 【mysql】 mybatis实现 主从表 left join 1:n 一对多 分页查询 主表从表都有查询条件 【mybatis】count 统计+JSON查询
mybatis实现 主从表 left join 1:n 一对多 分页查询 主表从表都有查询条件+count 需求: ======================================= ...
- php查询mysql数据库 查询条件替中文字符串变量时无法查询
$temp2 ='十年';mysql_query("SET NAMES GBK"); $res = mysql_query("select songer_name fro ...
- MongoDB中关于查询条件中包括集合中字段的查询
要查询的数据结构例如以下: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvZ2FvMzY5NTE=/font/5a6L5L2T/fontsize/400/f ...
- thinkphp where()条件查询
今天来给大家讲下查询最常用但也是最复杂的where方法,where方法也属于模型类的连贯操作方法之一,主要用于查询和操作条件的设置.where方法的用法是ThinkPHP查询语言的精髓,也是Think ...
- thinkphp _complex 复合查询 where多个子组实现
SELECT * FROM `user` WHERE ( `mobile` = '13824653465' OR `nickname` = 'evan' OR `openid` = '14545-fd ...
- python 数据库查询条件`不等于`
1.python 数据库查询条件不等于 当在做数据库查询的时候,想根据业务需求进行条件的筛选或过滤, 但是django封装的数据库语句中没有 '不等于' 查询操作. 2.例如:通过以下语句进行'不等于 ...
- django orm 的查询条件
Django的ORM查询操作: 查询数据库操作是一个非常重要的技术.在Django中,查询一般就是使用filter.exclude.get三个方法来实现,在调用这些方法的时候传递不同的查询条件来实现复 ...
- 查询表格——建立动态表格,使用ajax输入查询条件将后台数据查询出来以表格的形式展示出来
建立动态表格,使用ajax将前台查询条件传给后台,并将查询结果以表格的形式展示出来. 页面的展示效果如下图所示: 第一步:查询条件的部分: 代码如下: <div class="text ...
- MySQL慢查询(二) - pt-query-digest详解慢查询日志
一.简介 pt-query-digest是用于分析mysql慢查询的一个工具,它可以分析binlog.General log.slowlog,也可以通过SHOWPROCESSLIST或者通过tcpdu ...
随机推荐
- python2.7和python3.6共存,使用pip安装第三方库
因为一般情况下,window命令行运行pip,默认的情况是运行python3.6的pip,安装第三方库的路径也是python3.6,安装路径是: 如何运行在2.7环境下安装PIP呢?有网上的教程说需要 ...
- Mac OS 下安装 Vagrant
Vagrant是一款用来构建虚拟开发环境的工具,它其实算是一个跨平台的虚拟机管理工具 1 安装 1.1 安装Vagrant 下载好pkg文件后,下一步安装即可 1.2 安装Virtualbox Vag ...
- Android安装包apk文件在某些版本操作系统上安装解析包出错问题的解决办法
当我们将Android升级功能的中的下载新版本apk文件存放在data/data/xxx.apk位置时,在有的些版本的手机中安装可能会出现安装包解析出错的问题,对于该问题的解决方案是提升该文件的权限. ...
- (GoRails) Credential
之前的博客:https://www.cnblogs.com/chentianwei/p/9167489.html Guide: https://guides.rubyonrails.org/secu ...
- 牛客网——G送分了(py)
链接:https://www.nowcoder.net/acm/contest/74/G来源:牛客网 题目描述 杭州人称傻乎乎的人为62,而嘟嘟家这里没有这样的习俗. 相比62,他那里的人更加讨厌数字 ...
- 带你走进脚本世界,ijkplayer之【init-ios.sh】脚本分析
前言 集成ijkplayer,需要执行脚本init-ios.sh,那么init-ios.sh脚本干嘛用的了,花了半天时间,学习了下shell脚本,感觉脚本语言学起来还是比较容易上手的,现在仅仅能看懂了 ...
- hdu 3689 杭州 10 现场 J - Infinite monkey theorem 概率dp kmp 难度:1
J - Infinite monkey theorem Time Limit:1000MS Memory Limit:32768KB 64bit IO Format:%I64d &am ...
- rxjava 调用retrofit执行网络请求的过程
retrofit流程图 -1.RxJava调用Retrofit,从requestGtPushSaeUserInfo()中获得被观察者observable,然后new一个观察者向它订阅 0.从业务中 ...
- 记录JAVAWEB部署到JBOSS中遇到的问题
服务器环境 jdk1.8.0_212 + jboss-eap-6.4 系统是 Service 2008 R2 数据服务器 oracle12c 系统是 Service 2008 R2 首先安装的or ...
- New Concept English Two 3
$课文5 无错号之虞 47. Mr.James Scott has a garage in Silbury and now he has just bought another garage in P ...