thinkphp5中的where写法

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了thinkphp5中的where写法相关的知识,希望对你有一定的参考价值。

sql:SELECT * FROM table WHERE name like ‘%关键字1%‘ OR name like ‘%关键字2%‘ OR name like ‘%关键字3%‘

where在Thinkphp 对应的写法是怎样的?


手册:

表达式    含义
EQ    等于(=)
NEQ    不等于(<>)
GT    大于(>)
EGT    大于等于(>=)
LT    小于(<)
ELT    小于等于(<=)
LIKE    模糊查询
[NOT] BETWEEN    (不在)区间查询
[NOT] IN    (不在)IN 查询
EXP    表达式查询,支持SQL语法
$map[‘字段名‘] = array(‘表达式‘,‘查询条件‘);


$map写法:


$map[‘a‘] =array(‘like‘,array(‘%thinkphp%‘,‘%tp‘),‘OR‘);
$map[‘b‘] =array(‘notlike‘,array(‘%thinkphp%‘,‘%tp‘),‘AND‘);


所以上例为:

$map[‘name‘]=array(‘like‘,array(‘%关键字1%‘,‘%关键字2,‘关键字3‘),‘OR‘);

$list = Db(‘table‘)->where($map)->select();


我试了下,不行。会不会是tp3.2的呢?


而下面这种写法就可以。

$list = Db::name(‘User‘)->where(‘username‘,[‘like‘,‘%关键字1%‘],[‘like‘,‘关键字2‘],‘or‘)->select();


你也可以看看下面这篇:

THINKPHP实现查询两个WHERE条件数组间OR查询

https://yq.aliyun.com/ziliao/29407





----------  招募未来大神 -----------------------

如果您有利他之心,乐于帮助他人,乐于分享
如果您遇到php问题,百度且问了其他群之后仍没得到解答

欢迎加入,PHP技术问答群,QQ群:292626152

教学相长!帮助他人,自己也会得到提升!

为了珍惜每个人的宝贵时间,请大家不要闲聊!

愿我们互相帮助,共同进步!


以上是关于thinkphp5中的where写法的主要内容,如果未能解决你的问题,请参考以下文章

Thinkphp5 查询条件为[NOT] NULL时 数组写法

Thinkphp5 查询条件为[NOT] NULL时 数组写法

Thinkphp5 查询条件为[NOT] NULL时 数组写法

Thinkphp5 查询条件为[NOT] NULL时 数组写法

thinkPHP5.0中的setInc,setDec方法

thinkphp5的强大的时间查询功能