本文实例讲述了ThinkPHP5框架实现简单的批量查询功能。分享给大家供大家参考,具体如下:
TP5的EXP、批量查询、聚合查询等。
<!--more-->//使用EXP条件表达式,表示后面是原生的SQL表达式$result = Db::table("think_inno")->where("id","exp","<10 and name="asd"")->select();dump($result);//使用and和or进行混合查询$result = Db::table("think_inno")->where("name","like","%think%") //name类似%thinkphp%->where("id",["in",[1,2,3]],[">=",1],"or") //id在1~3之间,或者id>=1->limit(2)->select();//批量查询$result = Db::table("think_inno") //批量查询->where(["id" => [["in",[1,2,3]],[">=",1],"or"], "name" => ["like","%think%"]]) //(id在1~3中或者id>=1 )并且name类似think->limit(10)->select();//快速查询$result = Db::table("think_inno")->where("id&num",">",1)->select();id&num表示and;id&num表示or;//关于视图将查询的结果作为一张虚拟的表;TP里直接用Db::view来使用视图$result = Db::view("think_inno","id,name")......; //think-inno为表名,id,name为要查的字段//使用query对象$query = new hinkdbQuery;$query->table("think_inno")->where("name","like","think")->where("id",">=","3")->limit(10);$result = Db::select($query);print_r($result);//获取某列某行的某个值$name = Db::table("think_inno")->where("id",10)->value("name");print_r($name); //取到id为10的name字段的值//获取某列column$name = Db::table("think_inno")->where("status",1)->column("name");//取出status为1对应name列的所有值//获取某一行find//获取id键名的数据集$name = Db::table("think_inno")->where("num",0)->column("*","id");print_r($name);//聚合查询count、max、min、avg、sum$count = Db::table("think_inno")->where("num",0)->count();//获取num为0的对应的数据量$count = Db::table("think_inno")->where("num",2)->max("id");//获取num为2的最大的id
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。