laravel eloquent 强制mysql使用索引

为什么需要强制索引?

`数据库没有使用我们设想的索引进行sql查询,导致查询特别慢。`

mysql强制索引查询语句

select * from test where tt = 1 force index(idx_tt); // 强制索引

select * from test where tt = 1 use index(idx_tt); // 优先按照这种索引查找

laravel中实现强制索引查询

$this->model

->setTable(DB::connection('test_db')->raw('test' . ' FORCE INDEX(tt)'))

->where('tt', 1)

->get();

你可能感兴趣的:(laravel eloquent 强制mysql使用索引)