我从 API 中提取信息,信息以对象数组的形式呈现,我循环并提取我需要的信息,有时它涉及从多个对象中提取,例如我可能想从用户对象中提取用户名,然后从活动对象该用户工作了多少小时。
我用 php 编码,我可以显示信息,但我希望能够钻取和排序信息,所以我想创建一个 Mysql 临时表,插入所有值并以我喜欢的任何方式对它们进行排序。
那是最好的选择吗,这是一个时钟系统,所以我将是运行报告的主要系统,所以速度并不是真正的问题,其中一些查询很简单,有些更复杂,但只谈论 100-200 条记录一天,并且在大多数情况下,我只对 1-2 个月的数据运行查询,只有几千条记录。
我使用 SQL 的主要原因是轻松地按日期、从、之间、在类型之后排序。还有什么是处理删除临时表的最佳方法,我认为每隔几天删除一次就足够了。
还有一件事我不确定,假设我的大部分报告将在过去 60 天运行,默认情况下我应该基本上在过去 60 天运行报告,当有人在这 60 天内过滤它时,它会告诉我相关的来自临时表的数据,基本上一遍又一遍地重复使用这些信息。然后我可以输入一个 IF 语句,如果起始日期超过 60 天,我需要再次从 api 中提取所有信息并执行另一个新的临时表,或者我应该一直将所有数据加载到 mySQL 中并过滤为我想使用具有 1 个大型初始查询的同一张表?
FWIW 从 api 检索信息是最慢的部分,似乎是几秒钟的延迟,因此直接使用来自 SQL 的信息应该更顺畅。
我是 SQL 新手,所以我不确定最好的解决方案是什么,我可能会偏离我所采取的方法,所以我基本上是在寻找最有效的选项,以最大限度地减少编码并且对新手友好。我在 php 中编码 btw