zoukankan      html  css  js  c++  java
  • 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'

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

  • 相关阅读:
    微信群之Java技术红包问答
    Java JPA 查询实体部分字段
    我的iphone6退货之路
    Simulated Annealing (模拟退火)
    ICML 2017 Reading (1): Combining Online and Offline Knowledge in UCT
    ICML 2017 Reading
    NIPS 2014
    Gumbel-Max trick, Perturb and MAP and more
    ICML 2014
    非常有趣的JavaScript游戏
  • 原文地址:https://www.cnblogs.com/caicaizi/p/5230661.html
Copyright © 2011-2022 走看看