>백엔드 개발 >PHP 튜토리얼 >ThinkPHP5 프레임워크는 단순히 일괄 쿼리를 구현합니다.

ThinkPHP5 프레임워크는 단순히 일괄 쿼리를 구현합니다.

不言
不言원래의
2018-06-07 16:35:122322검색

본 글에서는 간단한 일괄 쿼리 기능을 구현하기 위한 ThinkPHP5 프레임워크를 주로 소개하고, 네이티브 SQL 문 쿼리, 일괄 쿼리, 빠른 쿼리, 집계 쿼리 등의 연산을 활용한 thinkPHP5 프레임워크의 연산 구현 기법을 예시 형태로 분석한다. 참고하세요

이 글의 예시에서는 ThinkPHP5 프레임워크를 이용한 간단한 일괄 쿼리 기능 구현에 대해 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다:

TP5의 EXP, 일괄 쿼리, 집계 쿼리 등.

<!--more-->
//使用EXP条件表达式,表示后面是原生的SQL表达式
$result = Db::table(&#39;think_inno&#39;)->where(&#39;id&#39;,&#39;exp&#39;,"<10 and name=&#39;asd&#39;")->select();
dump($result);
//使用and和or进行混合查询
$result = Db::table(&#39;think_inno&#39;)
->where(&#39;name&#39;,&#39;like&#39;,&#39;%think%&#39;)   //name类似%thinkphp%
->where(&#39;id&#39;,[&#39;in&#39;,[1,2,3]],[&#39;>=&#39;,1],&#39;or&#39;)  //id在1~3之间,或者id>=1
->limit(2)
->select();
//批量查询
$result = Db::table(&#39;think_inno&#39;)  //批量查询
->where([&#39;id&#39; => [[&#39;in&#39;,[1,2,3]],[&#39;>=&#39;,1],&#39;or&#39;], &#39;name&#39; => [&#39;like&#39;,&#39;%think%&#39;]]) //(id在1~3中或者id>=1 )并且name类似think
->limit(10)
->select();
//快速查询
$result = Db::table(&#39;think_inno&#39;)->where(&#39;id&num&#39;,&#39;>&#39;,1)->select();
id&num表示and;id&num表示or;
//关于视图
将查询的结果作为一张虚拟的表;TP里直接用Db::view来使用视图
$result = Db::view(&#39;think_inno&#39;,&#39;id,name&#39;)......;  //think-inno为表名,id,name为要查的字段
//使用query对象
$query = new \think\db\Query;$query->table(&#39;think_inno&#39;)->where(&#39;name&#39;,&#39;like&#39;,&#39;think&#39;)->where(&#39;id&#39;,&#39;>=&#39;,&#39;3&#39;)->limit(10);
$result = Db::select($query);
print_r($result);
//获取某列某行的某个值
$name = Db::table(&#39;think_inno&#39;)->where(&#39;id&#39;,10)->value(&#39;name&#39;);
print_r($name); //取到id为10的name字段的值
//获取某列column
$name = Db::table(&#39;think_inno&#39;)->where(&#39;status&#39;,1)->column(&#39;name&#39;);
//取出status为1对应name列的所有值
//获取某一行find
//获取id键名的数据集
$name = Db::table(&#39;think_inno&#39;)->where(&#39;num&#39;,0)->column(&#39;*&#39;,&#39;id&#39;);
print_r($name);
//聚合查询count、max、min、avg、sum
$count = Db::table(&#39;think_inno&#39;)->where(&#39;num&#39;,0)->count();//获取num为0的对应的数据量
$count = Db::table(&#39;think_inno&#39;)->where(&#39;num&#39;,2)->max(&#39;id&#39;);//获取num为2的最大的id

위 내용은 모두의 학습에 도움이 되기를 바랍니다. 더 많은 관련 내용은 PHP 중국어 홈페이지를 주목해주세요!

관련 권장사항:

ThinkPHP3.2 프레임워크는 addAll()을 사용하여 일괄적으로 데이터를 삽입합니다

ThinkPHP 프레임워크는 세션 간 도메인 문제를 구현합니다

위 내용은 ThinkPHP5 프레임워크는 단순히 일괄 쿼리를 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.