【发布时间】:2019-12-06 14:29:50
【问题描述】:
我有一个 Firebase 数据库正在运行,它存储 iOS 应用程序用户报告的数据;例如,可以报告一家杂货店,然后将其存储在数据库中。在商店名称旁边,报告的时间(四舍五入为 15 分钟)也以reportedTime 的形式存储在数据库中。
现在我想知道,在一天中的哪个时间 - 即早上(06:00 - 12:00 点),中午(12:00 - 18:00 点),晚上(18:00 - 24:00 点)或晚上(00:00 - 06: 00 点) – 提交了多少报告。
我从 firebase 获取值,将它们存储在模型中,因此可以访问,例如,report.reportTime 返回类似“2019-07-27 19:30:00 +0000 " 作为每个单独报告的字符串。
例如,我如何计算 00:00:00 到 06:00:00 之间的报告数量?
我正在使用 SwiftValidators 并尝试了以下方法(不要评判我!):
if Validator.contains("00:00:00").apply(report.reportTime) || Validator.contains("00:15:00").apply(report.reportTime) || Validator.contains("00:30:00").apply(report.reportTime) || Validator.contains("00:45:00").apply(report.reportTime) || Validator.contains("01:00:00").apply(report.reportTime) || Validator.contains("01:15:00").apply(report.reportTime) || Validator.contains("01:30:00").apply(report.reportTime) || Validator.contains("01:45:00").apply(report.reportTime) || Validator.contains("02:00:00").apply(report.reportTime) || Validator.contains("02:15:00").apply(report.reportTime) || Validator.contains("02:30:00").apply(report.reportTime) || Validator.contains("02:45:00").apply(report.reportTime) || Validator.contains("03:00:00").apply(report.reportTime) || Validator.contains("03:15:00").apply(report.reportTime) || Validator.contains("03:30:00").apply(report.reportTime) || Validator.contains("03:45:00").apply(report.reportTime) || Validator.contains("04:00:00").apply(report.reportTime) || Validator.contains("04:15:00").apply(report.reportTime) || Validator.contains("04:30:00").apply(report.reportTime) || Validator.contains("04:45:00").apply(report.reportTime) || Validator.contains("05:00:00").apply(report.reportTime) || Validator.contains("05:15:00").apply(report.reportTime) || Validator.contains("05:30:00").apply(report.reportTime) || Validator.contains("05:45:00").apply(report.reportTime) {
// do something which I don't know
}
【问题讨论】:
-
您是在问如何计算开始时间 (queryStarting) 和结束时间 (queryEnding) 之间的节点数 (snapshot.childrenCount) 吗?
标签: arrays swift list firebase arraylist