推荐!在Laravel中轻松容易的优化sql语句的扩展包

2022-05-15 0 400

下面由laravel教程栏目给大家介绍在Laravel中轻松容易的优化sql语句的扩展包(laravel-soar),希望对需要的朋友有所帮助!

laravel-soar – 在 Laravel 应用程序中轻松容易的优化 sql 语句的扩展包。

推荐!在Laravel中轻松容易的优化sql语句的扩展包

功能

支持基于启发式算法的语句优化支持复杂查询的多列索引优化(UPDATE, INSERT, DELETE, SELECT)支持 EXPLAIN 信息丰富解读支持 SQL 指纹、压缩和美化支持 Eloquent 查询构建器方法生成 SQL 优化报告

源码链接

github.com/guanguans/laravel-soar

相关项目

github.com/XiaoMi/soargithub.com/guanguans/soar-phpgithub.com/huangdijia/laravel-web-soargithub.com/wilbur-yu/hyperf-soargithub.com/guanguans/think-soar

环境要求

laravel >= 5.5

安装

$ composer require guanguans/laravel-soar --dev -vvv

发布服务

$ php artisan vendor:publish --provider="Guanguans\\\\LaravelSoar\\\\SoarServiceProvider"

使用

门面使用示例

$sql = Member::query()->select(['id',  'nickname'])->where('id',  100)->toRawSql();\\Soar::score($sql);        // 生成 sql 评分报告\\Soar::mdExplain($sql);    // 生成 markdown 格式的 explain 信息解读报告\\Soar::htmlExplain($sql);  // 生成 html 格式的 Explain 信息解读报告\\Soar::syntaxCheck($sql);  // sql 语法检查\\Soar::fingerPrint($sql);  // 生成 sql 指纹\\Soar::pretty($sql);       // 美化 sql\\Soar::md2html($sql);      // 将 markdown 格式内容转化为 html 格式内容\\Soar::help($sql);         // 输出 soar 帮助命令内容\\Soar::exec($command);     // 执行任意 soar 命令

生成 sql 评分报告示例

use App\\Models\\Member;Member::query()    ->select([        'id',        'nickname',    ])    ->where('id', 100)    // ->toSoarScore()   // 生成 sql 评分报告    // ->dumpSoarScore() // 打印 sql 评分报告    ->ddSoarScore()      // 打印 sql 评分报告,并且退出应用程序。;

推荐!在Laravel中轻松容易的优化sql语句的扩展包

// 查询构建器使用示例DB::table('yb_member')    ->select('*')    ->join('yb_member_account as yb_member_account', 'yb_member_account.member_id', '=', 'yb_member.id')    ->whereRaw('1 <> 1')    ->where('yb_member.nickname', 'like', 'admin')    ->where('yb_member.username', 'like', '%admin%')    ->whereRaw("substring(yb_member.username, 1, 5) = 'admin'")    ->whereIn('yb_member.id', [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120])    ->orWhereNotNull('yb_member.realname')    ->groupByRaw("yb_member.status, '100'")    ->having('yb_member.id', '>', '100')    ->inRandomOrder()    // ->toSoarScore()   // 生成 sql 评分报告    // ->dumpSoarScore() // 打印 sql 评分报告    ->ddSoarScore()      // 打印 sql 评分报告,并且退出应用程序。;

推荐!在Laravel中轻松容易的优化sql语句的扩展包

生成 explain 信息解读报告示例

// 查询构建器使用示例DB::table('yb_member')    ->select('*')    ->join('yb_member_account as yb_member_account', 'yb_member_account.member_id', '=', 'yb_member.id')    ->whereRaw('1 <> 1')    ->where('yb_member.nickname', 'like', 'admin')    ->where('yb_member.username', 'like', '%admin%')    ->whereRaw("substring(yb_member.username, 1, 5) = 'admin'")    ->whereIn('yb_member.id', [110, 120])    ->orWhereNotNull('yb_member.realname')    ->groupByRaw("yb_member.status, '100'")    ->having('yb_member.id', '>', '100')    ->inRandomOrder()    // ->toSoarHtmlExplain()   // 生成 explain 信息解读报告    // ->dumpSoarHtmlExplain() // 打印 explain 信息解读报告    ->ddSoarHtmlExplain()      // 打印 explain 信息解读报告,并且退出应用程序。;

推荐!在Laravel中轻松容易的优化sql语句的扩展包

美化 sql 语句

// 查询构建器使用示例DB::table('yb_member')    ->select('*')    ->join('yb_member_account as yb_member_account', 'yb_member_account.member_id', '=', 'yb_member.id')    ->whereRaw('1 <> 1')    ->where('yb_member.nickname', 'like', 'admin')    ->where('yb_member.username', 'like', '%admin%')    ->whereRaw("substring(yb_member.username, 1, 5) = 'admin'")    ->whereIn('yb_member.id', [110, 120])    ->orWhereNotNull('yb_member.realname')    ->groupByRaw("yb_member.status, '100'")    ->having('yb_member.id', '>', '100')    ->inRandomOrder()    // ->toSoarPretty()   // 生成美化后的 sql    // ->dumpSoarPretty() // 打印美化后的 sql    ->dumpSoarPretty()    // 打印美化后的 sql,并且退出应用程序。;

推荐!在Laravel中轻松容易的优化sql语句的扩展包《相关推荐:最新的五个Laravel视频教程》

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

【声明:根据2013年1月30日《计算机软件保护条例》2次修订第17条规定: 为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存 储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬! 鉴于此,也希望大家按此说明研究软件!】
本站所有源码尽量保证原汁原味,如有特殊情况会作出声明及标注,网站资源不做任何二次加密(原版加密除外,不影响程序使用的不会做解密处理),方便您更好的学习参考。 在您的能力范围内,为了大环境的良性发展,请尽可能的选择正版资源。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

即刻码站__国内靠谱的站长资源下载平台 php教程 推荐!在Laravel中轻松容易的优化sql语句的扩展包 https://www.jike1995.com/36707.html

常见问题
  • 本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用
查看详情
  • 最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度
查看详情

相关文章

发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务