Skip to content

Commit 43a7723

Browse files
committed
Update docs
1 parent 6813a36 commit 43a7723

File tree

4 files changed

+19
-203
lines changed

4 files changed

+19
-203
lines changed

README-EN.md

Lines changed: 8 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
# laravel-soar
22

3-
> Assist laravel application sql optimization and rewriting. - 辅助 laravel 应用 sql 优化、重写。
3+
![](docs/debug-bar.png)
44

5-
[简体中文](README.md) | [ENGLISH](README-EN.md)
5+
> Sql optimizer、rewriter for laravel. - sql 优化器、重写器。
66
77
[![Tests](https://github.com/guanguans/laravel-soar/workflows/Tests/badge.svg)](https://github.com/guanguans/laravel-soar/actions)
88
[![Check & fix styling](https://github.com/guanguans/laravel-soar/workflows/Check%20&%20fix%20styling/badge.svg)](https://github.com/guanguans/laravel-soar/actions)
@@ -59,109 +59,16 @@ $app->register(\Guanguans\LaravelSoar\SoarServiceProvider::class);
5959

6060
## Usage
6161

62-
### Generate sql scoring report example
62+
### Automatically monitor output sql score
6363

64-
```php
65-
use App\Models\Member;
66-
67-
Member::query()
68-
->select([
69-
'id',
70-
'nickname',
71-
])
72-
->where('id', 100)
73-
// ->toSoarScore() // Generate sql score report.
74-
// ->dumpSoarScore() // Print sql scoring report.
75-
->ddSoarScore() // Print the sql score report and exit the application.
76-
;
77-
```
78-
79-
![high-score](./docs/high-score.png)
80-
81-
```php
82-
// Query builder usage example.
83-
DB::table('yb_member')
84-
->select('*')
85-
->join('yb_member_account as yb_member_account', 'yb_member_account.member_id', '=', 'yb_member.id')
86-
->whereRaw('1 <> 1')
87-
->where('yb_member.nickname', 'like', 'admin')
88-
->where('yb_member.username', 'like', '%admin%')
89-
->whereRaw("substring(yb_member.username, 1, 5) = 'admin'")
90-
->whereIn('yb_member.id', [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120])
91-
->orWhereNotNull('yb_member.realname')
92-
->groupByRaw("yb_member.status, '100'")
93-
->having('yb_member.id', '>', '100')
94-
->orderByRaw('RAND()')
95-
// ->toSoarScore() // Generate sql score report.
96-
// ->dumpSoarScore() // Print sql scoring report.
97-
->ddSoarScore() // Print the sql score report and exit the application.
98-
;
99-
```
100-
101-
![low-score](./docs/low-score.png)
102-
103-
### Generate an explain information interpretation report example
104-
105-
```php
106-
// Query builder usage example.
107-
DB::table('yb_member')
108-
->select('*')
109-
->join('yb_member_account as yb_member_account', 'yb_member_account.member_id', '=', 'yb_member.id')
110-
->whereRaw('1 <> 1')
111-
->where('yb_member.nickname', 'like', 'admin')
112-
->where('yb_member.username', 'like', '%admin%')
113-
->whereRaw("substring(yb_member.username, 1, 5) = 'admin'")
114-
->whereIn('yb_member.id', [110, 120])
115-
->orWhereNotNull('yb_member.realname')
116-
->groupByRaw("yb_member.status, '100'")
117-
->having('yb_member.id', '>', '100')
118-
->orderByRaw('RAND()')
119-
// ->toSoarHtmlExplain() // Generate explain information interpretation report.
120-
// ->dumpSoarHtmlExplain() // Print explain information interpretation report.
121-
->ddSoarHtmlExplain() // Print the explain information interpretation report, and exit the application.
122-
;
123-
```
124-
125-
![explain](./docs/explain.png)
126-
127-
### Beautify sql statemen
128-
129-
```php
130-
// Query builder usage example.
131-
DB::table('yb_member')
132-
->select('*')
133-
->join('yb_member_account as yb_member_account', 'yb_member_account.member_id', '=', 'yb_member.id')
134-
->whereRaw('1 <> 1')
135-
->where('yb_member.nickname', 'like', 'admin')
136-
->where('yb_member.username', 'like', '%admin%')
137-
->whereRaw("substring(yb_member.username, 1, 5) = 'admin'")
138-
->whereIn('yb_member.id', [110, 120])
139-
->orWhereNotNull('yb_member.realname')
140-
->groupByRaw("yb_member.status, '100'")
141-
->having('yb_member.id', '>', '100')
142-
->orderByRaw('RAND()')
143-
// ->toSoarPretty() // Generate beautified sql.
144-
// ->dumpSoarPretty() // Print beautified sql.
145-
->dumpSoarPretty() // Print the beautified sql, and exit the application.
146-
;
147-
```
148-
149-
![pretty](./docs/pretty.png)
64+
![](docs/debug-bar.png)
15065

151-
### Facade usage examples
66+
### Example of use
15267

15368
```php
154-
$sql = Member::query()->select(['id', 'nickname'])->where('id', 100)->toRawSql();
155-
156-
\Soar::score($sql); // Generate sql score report.
157-
\Soar::mdExplain($sql); // Generate explain information interpretation report in markdown format.
158-
\Soar::htmlExplain($sql); // Generate Explain information interpretation report in html format.
159-
\Soar::syntaxCheck($sql); // SQL syntax check.
160-
\Soar::fingerPrint($sql); // Generate sql fingerprint.
161-
\Soar::pretty($sql); // Beautify sql.
162-
\Soar::md2html($sql); // Convert markdown format content to html format content.
163-
\Soar::help($sql); // Output soar help command content.
164-
\Soar::exec($command); // Execute any soar command.
69+
$soar = app('soar'); // get soar instance
70+
User::query()->ddSoarJsonScore() // Convenience query method to output scoring report
71+
\Soar::jsonScore(User::query()->toRawSql()); // soar facade generates scoring report
16572
```
16673

16774
## Testing

README.md

Lines changed: 10 additions & 101 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
11
# laravel-soar
22

3-
> Assist laravel application sql optimization and rewriting. - 辅助 laravel 应用 sql 优化、重写。
3+
![](docs/debug-bar.png)
4+
5+
> Sql optimizer、rewriter for laravel. - sql 优化器、重写器。
46
57
[简体中文](README.md) | [ENGLISH](README-EN.md)
68

@@ -31,7 +33,7 @@
3133

3234
## 环境要求
3335

34-
* laravel >= 5.5
36+
* laravel >= 6.10
3537

3638
## 安装
3739

@@ -59,109 +61,16 @@ $app->register(\Guanguans\LaravelSoar\SoarServiceProvider::class);
5961

6062
## 使用
6163

62-
### 生成 sql 评分报告示例
63-
64-
```php
65-
use App\Models\Member;
66-
67-
Member::query()
68-
->select([
69-
'id',
70-
'nickname',
71-
])
72-
->where('id', 100)
73-
// ->toSoarScore() // 生成 sql 评分报告
74-
// ->dumpSoarScore() // 打印 sql 评分报告
75-
->ddSoarScore() // 打印 sql 评分报告,并且退出应用程序。
76-
;
77-
```
78-
79-
![high-score](./docs/high-score.png)
80-
81-
```php
82-
// 查询构建器使用示例
83-
DB::table('yb_member')
84-
->select('*')
85-
->join('yb_member_account as yb_member_account', 'yb_member_account.member_id', '=', 'yb_member.id')
86-
->whereRaw('1 <> 1')
87-
->where('yb_member.nickname', 'like', 'admin')
88-
->where('yb_member.username', 'like', '%admin%')
89-
->whereRaw("substring(yb_member.username, 1, 5) = 'admin'")
90-
->whereIn('yb_member.id', [110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120])
91-
->orWhereNotNull('yb_member.realname')
92-
->groupByRaw("yb_member.status, '100'")
93-
->having('yb_member.id', '>', '100')
94-
->orderByRaw('RAND()')
95-
// ->toSoarScore() // 生成 sql 评分报告
96-
// ->dumpSoarScore() // 打印 sql 评分报告
97-
->ddSoarScore() // 打印 sql 评分报告,并且退出应用程序。
98-
;
99-
```
100-
101-
![low-score](./docs/low-score.png)
102-
103-
### 生成 explain 信息解读报告示例
104-
105-
```php
106-
// 查询构建器使用示例
107-
DB::table('yb_member')
108-
->select('*')
109-
->join('yb_member_account as yb_member_account', 'yb_member_account.member_id', '=', 'yb_member.id')
110-
->whereRaw('1 <> 1')
111-
->where('yb_member.nickname', 'like', 'admin')
112-
->where('yb_member.username', 'like', '%admin%')
113-
->whereRaw("substring(yb_member.username, 1, 5) = 'admin'")
114-
->whereIn('yb_member.id', [110, 120])
115-
->orWhereNotNull('yb_member.realname')
116-
->groupByRaw("yb_member.status, '100'")
117-
->having('yb_member.id', '>', '100')
118-
->orderByRaw('RAND()')
119-
// ->toSoarHtmlExplain() // 生成 explain 信息解读报告
120-
// ->dumpSoarHtmlExplain() // 打印 explain 信息解读报告
121-
->ddSoarHtmlExplain() // 打印 explain 信息解读报告,并且退出应用程序。
122-
;
123-
```
124-
125-
![explain](./docs/explain.png)
126-
127-
### 美化 sql 语句
128-
129-
```php
130-
// 查询构建器使用示例
131-
DB::table('yb_member')
132-
->select('*')
133-
->join('yb_member_account as yb_member_account', 'yb_member_account.member_id', '=', 'yb_member.id')
134-
->whereRaw('1 <> 1')
135-
->where('yb_member.nickname', 'like', 'admin')
136-
->where('yb_member.username', 'like', '%admin%')
137-
->whereRaw("substring(yb_member.username, 1, 5) = 'admin'")
138-
->whereIn('yb_member.id', [110, 120])
139-
->orWhereNotNull('yb_member.realname')
140-
->groupByRaw("yb_member.status, '100'")
141-
->having('yb_member.id', '>', '100')
142-
->orderByRaw('RAND()')
143-
// ->toSoarPretty() // 生成美化后的 sql
144-
// ->dumpSoarPretty() // 打印美化后的 sql
145-
->dumpSoarPretty() // 打印美化后的 sql,并且退出应用程序。
146-
;
147-
```
64+
### 自动监控输出 sql 评分
14865

149-
![pretty](./docs/pretty.png)
66+
![](docs/debug-bar.png)
15067

151-
### 门面使用示例
68+
### 使用示例
15269

15370
```php
154-
$sql = Member::query()->select(['id', 'nickname'])->where('id', 100)->toRawSql();
155-
156-
\Soar::score($sql); // 生成 sql 评分报告
157-
\Soar::mdExplain($sql); // 生成 markdown 格式的 explain 信息解读报告
158-
\Soar::htmlExplain($sql); // 生成 html 格式的 Explain 信息解读报告
159-
\Soar::syntaxCheck($sql); // sql 语法检查
160-
\Soar::fingerPrint($sql); // 生成 sql 指纹
161-
\Soar::pretty($sql); // 美化 sql
162-
\Soar::md2html($sql); // 将 markdown 格式内容转化为 html 格式内容
163-
\Soar::help($sql); // 输出 soar 帮助命令内容
164-
\Soar::exec($command); // 执行任意 soar 命令
71+
$soar = app('soar'); // 获取 soar 实例
72+
User::query()->ddSoarJsonScore() // 便捷查询器方法输出评分报告
73+
\Soar::jsonScore(User::query()->toRawSql()); // soar 门面生成评分报告
16574
```
16675

16776
## 测试

composer.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "guanguans/laravel-soar",
3-
"description": "Assist laravel application sql optimization and rewriting. - 辅助 laravel 应用 sql 优化、重写",
3+
"description": "Sql optimizer、rewriter for laravel. - sql 优化器、重写器",
44
"license": "MIT",
55
"type": "laravel",
66
"keywords": [

docs/debug-bar.png

410 KB
Loading

0 commit comments

Comments
 (0)