Laravel--查询构造器 方法 及聚合函数
controller内内容如下
<?php
/**
* Created by PhpStorm.
* User: work
* Date: 2018/1/2
* Time: 20:36
*/
namespace App\Http\Controllers;
use App\Student\Student;
use Illuminate\Support\Facades\DB;
Route::any('query1','StudentController@query1');查询构造器方法 添加方法
public function query1()
{
// 返回布尔 单个添加$bloon = DB::table('student')->insert(['name'=>'gwz','age'=>18]);
// 返回当前添加行 $num = DB::table('student')->insertGetId(['name'=>'ggg','age'=>3]);
// 批量添加返回布尔 $bloon = DB::table('student')->insert([
// ['name'=>'gwz1','age'=>11],
// ['name'=>'gwz22','age'=>111],
// ]);
}
Route::any('query2','StudentController@query2');查询构造器方法 修改方法
//查询构造器方法 修改方法
public function query2()
{
// 影响的行数 $num = DB::table('student')->where(['id'=>5])->update(['age'=>0]);
// 修改年龄增加
// 受影响行数 默认修改年龄数自增为 age=age+1 $num = DB::table('student')->increment('age');
// 受影响行数 默认修改年龄数自增为 age=age+3 $num = DB::table('student')->increment('age',3);
//修改年龄减小
// 受影响行数 默认修改年龄为age=age-1 $num = DB::table('student')->decrement('age');
// 受影响行数 默认修改年龄为age=age-3 $num = DB::table('student')->decrement('age',3);
//受影响行数 id为5 年龄 age=age+3 同时修改`name`为hahahah $num = DB::table('student')->where(['id'=>5])->increment('age',3,['name'=>'hahahah']);
// var_dump($num);
}
Route::any('query3','StudentController@query3');查询构造器方法 删除方法
//查询构造器方法 删除方法
public function query3()
{
// 返回受影响行数 删除条件为 id = 5 $num = DB::table('student')->where('id','5')->delete();
// 返回受影响行数 删除条件为 id >= 5 $num = DB::table('student')->where('id','>=','5')->delete();
//清空表 truncate 非常危险 不返回任何 DB::table('student')->truncate();
}
Route::any('query4','StudentController@query4');查询构造器 查询方法
//查询构造器 查询方法
public function query4()
{
// 主要方法有 get() first() where() pluck() select()
// 获取数据get()
// 获取所有数据 $student = DB::table('student')->get()->toArray();
// 没什么卵用first()
// 获取倒序ID的第一条ID $student = DB::table('student')->orderBy('id','desc')->first();
//
//
// 条件查询where()
// 获取ID大于0的所有数据 并且变为数组 $student = DB::table('student')->where('id','>=',0)->get()->toArray();
// 复合条件查询whereRaw()
// 获取id是11并且年龄是11 并且变为数组 $student = DB::table('student')->whereRaw("id=? and age =?",['11','11'])->get()->toArray();
//pluck()中文意思为摘下的意思 摘下一个字段存为一个数组
// 将字段`name`摘下存入一个数组 $names = DB::table('student')->pluck('name')->toArray();
//pluck()
// 将字段`name`摘下来 数组形式 为 array('id'=>'name') $names = DB::table('student')->pluck('name','id')->toArray();
//select()指定要查询的字段
// 查询`age`,`name`字段内容 且变为二维数组 $student = DB::table('student')->select('age','name')->get()->toArray();
//chunk()用来处理大量数据
// 5.4的不会用暂时不用
// 每次查1000条为一个数组 满足条件则终止查询
// DB::table('student')->chunk(1000,function ($msg){
// var_dump($msg);
// if(你的条件)
// {
// return false;
// }
// });
}
Route::any('query5','StudentController@query5');聚合函数
//聚合函数
public function query5()
{
//统计条数count()
// 表中所有条数 $num = DB::table('student')->count();
//max()取最大
//统计字段中数值最大的 $num = DB::table('student')->max('age');
//min()取最小
//统计字段中数值最小的值 $num = DB::table('student')->min('age');
//avg()
//统计字段中数值平均值 $num = DB::table('student')->avg('age');
//sum()
//统计字段中数值的和
$request->all()//获取所有参数if($request->isMethod('GET')){判断是否是GET请求}$res = $request->is('student/*');$res = $request->ajax();========================================================
laravel 使用 session 路由配置Route::group(['middleware'=>['web']],function (){ Route::any('session1',['uses'=>'StudentController@session1']); Route::any('session2',['uses'=>'StudentController@session2']);});
StudentController 内 存入sessionSession存入数组内方法Sssion::push('key','value1');Sssion::push('key','value2');取出Session中的数组并且删除Session::pull('key');
判断Session中某个Key在不在Session::has('key')public function session1(Request $request) { //HTTP request session(); $request->session()->put('key1','val1');Session::put('key','value'); }
StudentController 内 读取 session public function session2(Request $request) { $session = $request->session()->get('key1');Session::get('key','如果key不存在可以在这里写默认值'); var_dump($session); }
php变量转json public function response() { $data = ['errCode'=>0, 'errMsg'=>'success', 'data'=>'dada' ]; return response()->json($data); }
Laravel--查询构造器 方法 及聚合函数的更多相关文章
- Laravel查询构造器简介
数据表 CREATE TABLE IF NOT EXISTS students( `id` INT AUTO_INCREMENT PRIMARY KEY, `name` VARCHAR(255) NO ...
- Laravel查询构造器的使用方法整理
1.结果集 1.1从一张表获取所有行,get方法获取所有行 $users = DB::table('users')->get(); 获取列的值 foreach ($users as $user) ...
- ORM之自关联、add、set方法、聚合函数、F、Q查询和事务
一.外键自关联(一对多) 1.建表 # 评论表 class Comment(models.Model): id = models.AutoField(primary_key=True) content ...
- hibernate学习系列-----(5)hibernate基本查询下篇:hibernate聚合函数、分组查询及命名查询
在上一篇中,大致学习了hibernate的基本查询:HQL基本查询,今天,继续昨天的步伐,继续学习hibernate的基本查询..... 1.hql聚合函数,先大致列一下hql的聚合函数有哪些吧: 在 ...
- laravel 查询构造器2
//查询构造器 public function query() { //获取所有的数据 $student = DB::table('student')->get(); var_dump($stu ...
- 【mysql】 mysql 子查询、联合查询、模糊查询、排序、聚合函数、分组----------语法
第二章 mysql 一.模糊查询 like 1. 字段 like '河北省%' %代表任何N个字符 2 字段 like '河北省____' _代表任意1个字符 二.IN 语法:SELECT 字段列1, ...
- 第二天,导出文件sql,查询,视图view,聚合函数,反模式,字符串处理函数
//把数据库导出到脚本文件mysqldump -uroot -p1234 --databases abc > d:/a/abc.sql CREATE TABLE stud( id INT PRI ...
- SQL Server温故系列(4):SQL 查询之集合运算 & 聚合函数
1.集合运算 1.1.并集运算 UNION 1.2.差集运算 EXCEPT 1.3.交集运算 INTERSECT 1.4.集合运算小结 2.聚合函数 2.1.求行数函数 COUNT 2.2.求和函数 ...
- laravel查询构造器DB还是ORM,这两者有什么区别,各该用在什么场景中
解答一: 我们所有操作都是走的orm,因为操作简单 直观明了 好维护,性能是低一些 但还没有多致命,真有并发需要优化了 用DB也不一定能解决问题.还是要了解orm每个方法的意思,不然你可能一不小心就会 ...
随机推荐
- What is the Annotation?
Annotation称为注释或注解,它是一个接口.注解提供了一种为程序元素(类.方法.成员变量等)设置元数据(描述其它数据的数据)的方法.编译器.开发工具或其它程序中可以通过反射来获取程序中的Anno ...
- PYTHON的前端部分
CSS部分,CSS起到修饰HTML的作用比如颜色,字体,等等. css如何和HTML共同其作用,那么CSS有几种引入HTML的方式 那么当引入了CSS如何让css对应的使相应的HTML标签上起作用,就 ...
- mysql入门学习笔记
MySQL的登陆和退出 mysql -u 用户名 -p 密码 #登陆 quit #退出(exit or \q) 具体参数: 参数 描述 -D,--database=name 打开指定数据库 -deli ...
- 原生JS实现选中的radio变为未选中
需求如下,radio已经选中,再点击,取消选中状态. 效果如链接:演示地址 直接上代码: <!DOCTYPE html> <html> <head> <met ...
- ActiveMQ (二)—发布订阅模式
ActiveMQ的另一种模式就SUB/HUB即发布订阅模式,是SUB/hub就是一拖N的USB分线器的意思.意思就是一个来源分到N个出口.还是上节的例子,当一个订单产生后,后台N个系统需要联动,但有一 ...
- innobackupex: error while loading shared libraries: libssl.so.6
我遇到过这个问题,但由于测试环境不允许上网,所以虽然搜到了一篇解决办法,但我也未亲自测试,先记录下来别人的解决办法. 参考文章:http://blog.itpub.net/29654823/views ...
- winmount导致资源管理器崩溃
今天,在别人电脑上遇到一个问题,右键点击某个特定文件夹会导致资源管理器崩溃重启,提示为: Runtime Error! Program: C:\Windows\Explorer.exe This ap ...
- hg (Mercurial)multiple heads (hg 多头)、撤销 commit,并保留修改
有时候 commit 后才意识到还未 pull,这个时候会有如下提示: wlan-0-182:mobile-v2 lixiumei$ hg pull -upulling from ssh://hg@b ...
- openFileOutput和openFileInput还有FileOutStream与openFileOutput
FileOutputStream fos = openFileOutput("",MODE_PRIVATE); fos.write("private".getB ...
- (转)配置、安装Apache24免装版
去过官网下载的应该都知道现在apache已经不提供.exe的一键安装程序的形式了,下载到的都只有免安装版本的. 首先下载,不在叙述.下载解压之后会得到如下的目录:. 1.进入:apache24le-- ...