查询构建器 - Query Builder

0
视频
0
完成
0%
进度
0
分钟
0
完成
0%
进度

之前我们一直使用 DB 类的一些方法,再加上一些原始的 SQL 查询语句去操作数据库,Laravel 提供了一种兼容性更好,更方便,更易用的方法去做这些事,这就是 Query Builder .. 查询构建器 ...

其实就是使用一些方法去操纵数据库 ... 不用我们再手工输入 SQL 查询语句了 ... 下面,我们去试一下。

打开 MovieController ... 在这个 index 方法里面,我们去试一下使用 Query Builder ... 先注释掉 DB::select 这行代码 ... 还有下面的 return View::make ...

比如我们想要找到 movies 这个表里的所有的数据 ... 可以这样 .. 输入 DB 冒号冒号 ... table ... 在这个方法里,先指定一下数据表的名称 ... movies ... 后面,再应用一个 get() 方法 ...

这样就可以获取到 movies 这个数据表里面的所有的数据了 ... 再去命名一下这个结果 ... $data 等于 ... 然后用 print_r 把这个 $data 输出到屏幕上 ..

$data = DB::table('movies')->get();

(#浏览器)打开浏览器 ... 查看一下源代码 ... 如果出现乱码,可以修改一下页面的编码格式 ... 使用 UTF-8 ..

你会看到,找出来的结果跟使用 SELECT 星号,FROM movies 这个语句是一样的 .. 一个数组 .. 里面的每个项目都是一个对象 ...

限制数量与偏移

默认会把所有的结果显示出来,想限制一下输出的结果的数量,可以使用 take 方法 ...

比如只想要两条结果 ... ->take(2)

(#浏览器)这里只会显示出两条结果 ... 想再设置一下偏移量 ... 可以用 skip 方法去设置一下。

->skip(2)

(#浏览器)会从第三个结果开始显示 ... 一共显示两个 ...

排序

对这个结果排下顺序 ... 用的是 orderBy .. (#返回)先注释掉限制还有偏移这两个方法 ... 比如想按照电影的上映日期,降序排列 ... orderBy ... 注意这里的 B 是大写的 ... 在方法里,先指定一下字段的名称 ... movie_date ... 第二个参数是排序的方式 ... DESC 表示降序 ... ASC 表示升序 ...

$data = DB::table('movies')->orderBy('movie_date', 'DESC')->get();

(#浏览器)你会看到数据库里最新的电影是 盗梦空间 ... 2010 年,7月16号发布的 ... 最早的电影是 阿甘正传 ... 是 1994 年,6月23 号上映的。

指定字段

现在这里会显示出所有的字段,我们也可以指定一下要输出的字段 ..

加上一个 select 方法 ... 里面是想要的字段的列表 .. 比如只想要电影标题,还有发布日期这两个字段 ...

$data = DB::table('movies')->select('movie_title', 'movie_date')->get();

(#浏览器)返回的结果里,只会显示 movie_title 还有 movie_date 这两个字段 ..

0:00
2:25
0:00
0:00
0:00
3:54

查询构建器 - Query Builder《 Laravel 数据库 》

统计

14696
分钟
0
你学会了
0%
完成

社会化网络

关于

微信订阅号

扫描微信二维码关注宁皓网,每天进步一点