Thinkphp6查询表达式

比较查询

  • 查询表达式支持大部分常用的SQL语句,语法格式如下:
where('字段名','查询表达式','查询条件');
  • 在查询数据时,使用where()方法
Db::name('user')->where('id',14)->find();
Db::name('user')->where('id,'=',14)->find();
  • 可以使用<>、>、<、>=、<=筛选出各种比较值的数据

区间查询

  • 使用like表达式进行模糊查询
Db::name('user')->where('email','like','zqx%')->find();
  • like表达式支持数组传递进行模糊查询
Db::name('user')->where('email','like',['tl%','zqx%'],'or')->select();
  • like表达式可以使用whereLike()和whereNoLike()
//使用whereLike()方法
Db::name('user')->whereLike('email','zqx%')->find();
//使用whereNotLike()方法
Db::name('user')->whereNotLike('email','zqx%')->select();
  • between表达式可以用来进行区间查询
Db::name('user')->where('price',70)->select();
Db::name('user')->where('price','between',[30,70])->select();
  • between表达式有两种方式whereBetween()和whereNotBetween()
//使用whereBetween()方法
Db::name('user')->whereBetween('price','30,70')->find();
//使用whereNotBetween()方法
Db::name('user')->whereNotBetween('price','30,70')->find();
  • In表达式可以用来进行IN查询
Db::name('user')->where('price','in',[60,70,80])->find();
Db::name('user')->where('price','in','60,70,80')->find();
  • In表达式有两种方式whereIn()和whereNotIn()
//使用whereIn()
Db::name('user')->whereIn('price','60,70,80')->select();
//使用whereNoIn
Db::name('user')->whereNotIn('price','60,70,80')->select();
  • null表达式可以查询字段是否(不)是Null
Db::name('user')->where('pass','null')->select();
Db::name('user')->where('pass','not null')->select();
  • null表达式有两种方式whereNull()和whereNotNull()
Db::name('user')->whereNull('pass')->select();
Db::name('user')->whereNotNull('pass')->select();

EXP查询

  • 使用exp可以自定义字段后的SQL语句
Db::name('user')->where('price','exp','between 30 and 70')->select();
  • exp表达式的方法:whereExp()
Db::name('user')->whereExp('price','in(70,80)')->select();
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Lcxuan27

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值