本篇文章小编给大家分享一下laravel多条件查询方法,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。
说明
在日常开发中,经常会需要写多条件的数据库查询语句。在使用框架的情况下,单纯使用原生sql查询会导致结果与model无法对应,也就没有办法使用框架的一些便利的方法对结果集进行处理。尤其是laravel提供了非常多的对查询结果集进行处理的工具。所以最好是使用laravel提供的ORM进行多条件的数据库查询。
问题
比如需要执行这样一条sql语句
select * from homework where (id between 1 and 10 or id between 50 and 70) and complete = 1 and (title like 'a%' or title like 'b%');
解决方式
$homeworks = Homework::where(function ($query) { $query->whereBetween('id', [1, 10]) ->orWhereBetween('id', [50, 70]); })->where('complete', 1) ->where(function ($query) { $query->where('title', 'like', 'a%') ->orWhere('title', 'like', 'b%'); })->get();
总结
使用ORM查询数据可以得到model数据集,能更方便的处理数据。
laravel的where方法使用闭包可以有效的构建嵌套的where子句(在这里,使用where的闭包相当于在构建sql的时候加一个括号
迷雾城堡免广告 最新版v0.1.30
迷雾城堡免广告是一款非常好玩的模拟建造类手游,玩家无需看广告
鉴车大师免广告 安卓版v1.2.2
鉴车大师免广告是一款非常好玩的模拟类手游,玩家在游戏中不用看
从前有条街 安卓最新版v1.5
从前有条街是一款非常好玩的模拟经营类手游,玩家在游戏中将会进
我的世界源之界冰火魔龙 最新版v阿夜整合
我的世界源之界冰火魔龙模组整合包是一款像素风格的沙河模拟生存
假面骑士创骑腰带模拟器 安卓版v6
假面骑士创骑腰带模拟器是一个专为喜欢假面骑士的用户打造的变身