用于多日期时间列索引的最佳数据库解决方案

6gpjuf90  于 2021-06-15  发布在  Mysql
关注(0)|答案(1)|浏览(285)

我正在为工人创建一个值班管理系统,数据库将包含以下列

id |员工id |职责id |职责开始|职责结束

这个系统需要知道在给定的时间内有多少员工在工作。
我目前正在使用mysqli,它似乎很慢,因为表数据正在增加。
我正在寻找一个合适的服务,可以处理每天500000条记录插入和搜索内的职责开始和职责结束索引。

au9on6nz

au9on6nz1#

在大型表中,开始-结束范围很难优化。
也许解决这种情况的最好办法是做一些非常糟糕的事情——取消约会(是的,这一次两个错误可能会变成一个正确。)

ID | STAFF_ID | DUTY_ID | date | START_time | END_time

一些问题:
如果轮班时间是午夜,那就排两行。
在上有索引 date ,或者至少从 date . 即使查询必须扫描当天的所有条目,但至少比扫描整个表要少得多(所有其他“显而易见的解决方案”都不如扫描半张table。)
如果您想进一步讨论和辩论,请提供 SELECT 基于您的“模式”或我的“模式”的语句。不要担心性能;我们可以讨论如何改进它们。

相关问题