我有一个简单的 where 查询,它在 foreach 中重复了一段时间,实际上可能很多,所以这是我的查询:
for ($i = 0; $i < count($hasdate); $i++) {
$roomprice = RoomPricingHistory::
Where('accommodation_room_id', $hasroom[$i])
->where('from_date', '<=', $hasdate[$i])
->where('to_date', '>=', $hasdate[$i])
->get()->sortBy('created_at');
$lastget = last($roomprice);
$last_price = last($lastget);
if ($last_price) {
$final_price[] = $last_price->sales_price;
} else {
$has_not_capacity = $hasdate[$i];
}
}
所以每次运行它在望远镜中大约需要 2,509.10 毫秒,这是望远镜向我显示的作为在表上运行的查询的内容
select
*
from
`room_pricing_histories`
where
`accommodation_room_id` = 3
and `from_date` <= "2019-06-01 09:00:00"
and `to_date` >= "2019-06-01 09:00:00"
那么关于如何优化此查询的任何想法?
慕娘9325324