资讯专栏INFORMATION COLUMN

使用 Orator 将你的 SQL 转换为 Laravel Query 语句

tyheist / 3147人阅读

摘要:本文翻译整理至介绍你可以可以使用的在线工具轻松的将原生和历史遗留语句转换为函数式语句。使用点击此处可试用此工具你只需输入您的语句,此工具便会返回一个函数式语句。而则会将尝试将反引号中的内容作为命令来执行,详见执行运算符。

本文翻译整理至 Convert Your SQL to Laravel Builder with Orator

介绍

你可以可以使用 Orator(Maurice Calhoun 的在线工具)轻松的将原生和历史遗留 SQL 语句转换为 Laravel 函数式 Query 语句。

这个在线工具也是你学习 Laravel ORM 的极好工具,它可以帮助你将 SQL 查询语句转换成查询构建器对象,因为学习新的 ORM 有时可能成为新开发人员的挑战。

使用

点击此处可试用此工具

你只需输入您的 SQL语句,此工具便会返回一个 Laravel 函数式 Query 语句。

例如,拿这个SQL查询:

select posts.id, posts.title, posts.body from posts
where posts.author_id = 1
order by posts.published_at DESC
limit 10;

在线工具将其转换为以下 Laravel 函数式 Query 语句 :

DB::select("posts.id","posts.title","posts.body")
    ->from("posts")
    ->where("posts.author_id", "=", 1)
    ->orderBy("posts.published_at", "DESC")
    ->limit(10)
    ->get();

最后还有一件要注意的事,你必须将反引号(`)替换为 (") 才能正常使用,因为此工具在生成字符串时会使用反引号。而 PHP 则会将尝试将反引号中的内容作为 shell 命令来执行,详见(执行运算符)。

如果你正在学习 Laravel 的查询构建器,那么不妨先看一看 @godruoyi 翻译的这篇文章,相信会对你有所帮助:使用预加载优化 Laravel Model 查询

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/26189.html

相关文章

  • Laravel 5.7 最佳实践和开发技巧分享

    摘要:当查询数据时,本地范围允许我们创建自己的查询构造器链式方法。这样便会知道这是一个本地范围并且可以在查询构造器中使用。某些查询构造器不可用或者说可用但是方法名不同,关于这些请查阅所有集合的方法。 showImg(https://segmentfault.com/img/remote/1460000017877956?w=800&h=267); Laravel 因可编写出干净,可用可调试的...

    ninefive 评论0 收藏0
  • Laravel源码解析之Model

    摘要:根据单一责任开发原则来讲,在的开发过程中每个表都应建立一个对外服务和调用。类似于这样解析的数据操作分两种它们除了有各自的特色外,基本的数据操作都是通过调用方法去完成整个。内并没有太多的代码,大多都是处理数据库链接。 showImg(https://segmentfault.com/img/bVbhjvY?w=600&h=296); 前言 提前预祝猿人们国庆快乐,吃好、喝好、玩好,我会在...

    CloudwiseAPM 评论0 收藏0
  • Laravel 学习笔记之 Query Builder 源码解析(中)

    说明:本篇主要学习数据库连接阶段和编译SQL语句部分相关源码。实际上,上篇已经聊到Query Builder通过连接工厂类ConnectionFactory构造出了MySqlConnection实例(假设驱动driver是mysql),在该MySqlConnection中主要有三件利器:IlluminateDatabaseMysqlConnector;IlluminateDatabaseQuery...

    zhou_you 评论0 收藏0
  • Laravel 学习笔记之 Query Builder 源码解析(下)

    摘要:,看下源码返回很容易知道返回值是,然后将该值存储在变量中,这时。看下的源码去除掉字符后为返回从源码中可知道返回值为,这时。 说明:本文主要学习下Query Builder编译Fluent Api为SQL的细节和执行SQL的过程。实际上,上一篇聊到了IlluminateDatabaseQueryBuilder这个非常重要的类,这个类含有三个主要的武器:MySqlConnection, M...

    qpal 评论0 收藏0
  • Laravel Query Builder 复杂查询案例:子查询实现分区查询 partition b

    摘要:案例案例在文章列表中附带上前条评论,在获取文章列表时同时把每个文章的前条评论一同查询出来。这是典型分区查询案例,需要根据表中的字段进行分区,同时根据条件进行排序,把符合条件的前条是数据取出来。查询语句中定义变量以及函数的使用如何构建子查询。 案例 案例:Laravel 在文章列表中附带上前10条评论?,在获取文章列表时同时把每个文章的前10条评论一同查询出来。 这是典型分区查询案例,需...

    littleGrow 评论0 收藏0

发表评论

0条评论

tyheist

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<