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声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。
- 上一篇: ThinkPHP5-缓存查询
- 下一篇: Thinkphp5-前置操作
