【发布时间】:2016-12-06 14:34:11
【问题描述】:
我是 Neo4j 的新手,所以也许我完全错了,但我会试一试!
我们的数据主要由存储为节点的预订、用户和设施组成。
我需要同时计算特定时间范围内发生的总预订量和该时间范围内的总收入(存储为reservation.income)。
我想通过将日期创建为节点来解决这个问题,这样我可以将关系 [:PURCHASED_ON] 分配给在特定日期发生的所有预订。
据我了解,将日期创建为节点可能会给我带来一些好处:
- 我可以从 dd/mm/yyyy 中拆分日期并将它们存储为整数属性,这样我就可以使用数学运算符,例如 > 和
- 我可以为节点创建一个标签,将每个月表示为一个单词
- sum() 一天或一个月的收入应该更容易
基本上,我正在考虑做这样的事情
CREATE (d:Day {name:01/11/2016 day: TOINT(01), month: TOINT(11), year: TOINT(2016)}
我已经看到一个可能的解决方案是为每年、每月 (1-12) 和每天 (1-31) 创建一个节点,但我认为这会使我的 Graph 的架构变得非常复杂,因为每个预订都有一个“insert_date”(创建日期),然后是官方的“reservation_date”(到期日)。
我是在这里做某事还是只是在浪费时间?谢谢!
【问题讨论】:
标签: date neo4j cypher graph-databases