Thinkphp 查询条件 and 和 or同时使用即复合查询

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’

            注意:快捷查询方式中“|”和“&”不能同时使用。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112869.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 死锁的四个必要条件和解决办法_半暖的博客_活锁和死锁的概念

    死锁的四个必要条件和解决办法_半暖的博客_活锁和死锁的概念死锁概念及产生原理   概念:多个并发进程因争夺系统资源而产生相互等待的现象。   原理:当一组进程中的每个进程都在等待某个事件发生,而只有这组进程中的其他进程才能触发该事件,这就称这组进程发生了死锁。   本质原因:     1)、系统资源有限。     2)、进程推进顺序不合理。死锁产生的4个必要条件  1、互斥:某种资源一次只允许一个进程访问,即该资源一旦分配给某个进程…

    2022年4月20日
    64
  • Fedora16 安装相关

    Fedora16 安装相关

    2021年12月16日
    34
  • 奇妙的go语言(聊天室的开发)

    奇妙的go语言(聊天室的开发)

    2021年12月2日
    51
  • cocos2dx触屏响应(单点触摸)CCTouchBegan,CCTouchMove,CCTouchEnd

    cocos2dx触屏响应(单点触摸)CCTouchBegan,CCTouchMove,CCTouchEnd

    2021年12月9日
    40
  • pta 列车调度_PTA 7-10 列车调度

    pta 列车调度_PTA 7-10 列车调度火车站的列车调度铁轨的结构如下图所示。两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道。每趟列车从入口可以选择任意一条轨道进入,最后从出口离开。在图中有9趟列车,在入口处按照{8,4,2,5,3,9,1,6,7}的顺序排队等待进入。如果要求它们必须按序号递减的顺序从出口离开,则至少需要多少条平行铁轨用于调度?输入格式:输入第一行给出一个整数N(2…

    2022年7月26日
    8
  • ac测评题库_awing

    ac测评题库_awing杭州人称那些傻乎乎粘嗒嗒的人为 62(音:laoer)。杭州交通管理局经常会扩充一些的士车牌照,新近出来一个好消息,以后上牌照,不再含有不吉利的数字了,这样一来,就可以消除个别的士司机和乘客的心理障碍,更安全地服务大众。不吉利的数字为所有含有 4 或 62 的号码。例如:62315,73418,88914 都属于不吉利号码。但是,61152 虽然含有 6 和 2,但不是 连号,所以不属于不吉利数字之列。你的任务是,对于每次给出的一个牌照号区间 [n,m],推断出交管局今后又要实际上给多少辆新的士车上牌

    2022年8月9日
    3

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号