我想从此fingerprint table获取第一个数据和最新数据,但是它花费了太长时间,因为该表获得了超过10万条记录。有什么解决办法吗?之前谢谢
这是我的代码:
$checkInOut = Fingerprint::where('USERID', 317)->where('CHECKTIME', '>=', $startDate)->where('CHECKTIME', '<=', $dayAfterStartDate)->get();
$checkIn = $checkInOut->first();
$checkOut = $checkInOut->last();`
答案 0 :(得分:0)
在USERID
和CHECKTIME
列上覆盖索引将加快数据检索的速度。
CREATE INDEX idx_fingerprint ON Fingerprint(userid, checktime);