vpominchuk / laravel-mysql-use-index-scope
一个允许使用 MySQL `USE INDEX` 和 `FORCE INDEX` 语句的超级简单的包
v1.0.7
2024-03-13 15:46 UTC
Requires
- php: ^7.4|^8.0
- illuminate/support: ^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
README
Laravel MySQL Use Index Scope
一个允许使用 MySQL USE INDEX
和 FORCE INDEX
语句的超级简单的包。
要求
- PHP
^7.4 | ^8.0
- Laravel 6, 7, 8, 9, 10, 和 11
安装
composer require vpominchuk/laravel-mysql-use-index-scope
使用方法
只需在模型中引用所需的特质
模型
use VPominchuk\ModelUseIndex; class MyModel extends Model { use ModelUseIndex; }
代码中的任何位置
$builder = MyModel::where('name', $name)->where('age', $age)-> useIndex($indexName)->...
数据库表结构
您需要创建一个具有所需名称的命名索引。例如
Laravel 迁移
$table->index(['name', 'age'], 'user_age_index');
可用方法
useIndex($indexName)
告诉 MySQL 如果可能,则使用索引。
forceIndex($indexName)
强制 MySQL 如果可能,则使用索引。
ignoreIndex($indexName)
请求 MySQL 如果可能,则忽略索引。
安全
如果您发现任何与安全相关的问题,请使用问题跟踪器。
致谢
许可
MIT 许可证 (MIT)。请参阅许可文件获取更多信息。