【发布时间】:2019-03-23 21:33:42
【问题描述】:
根据neo4j-datatypes,属性具有原始数据类型。
-
创建属性时如何定义数据类型。例如以下查询,如何将属性“age”明确定义为“short”数据类型?
MATCH (e:Employee) SET e.age = 55 根据上述查询,年龄的默认数据类型是什么?
【问题讨论】:
根据neo4j-datatypes,属性具有原始数据类型。
创建属性时如何定义数据类型。例如以下查询,如何将属性“age”明确定义为“short”数据类型?
MATCH (e:Employee) SET e.age = 55
根据上述查询,年龄的默认数据类型是什么?
【问题讨论】:
目前,Cypher 支持以下basic types:Boolean、Integer、Float、String、List 和 Map。
使用 Cypher 时,您无需定义数据类型。将为您选择最适合您价值的数据类型。
在指定的查询中,e.age 将始终是 Integer。如果您更改不适合Integer 值的值,则类型将被更改。例如:MATCH (e:Employee) SET e.age = 55.5 将更改 Float 的数据类型。
【讨论】:
这是一个老问题,我知道,在给出的时间答案可能是正确的,但我还是会在这里参考我的答案:https://stackoverflow.com/a/51524709/48779。
导入时可以使用密码函数,这意味着您可以使用toInt、date等函数。
另请注意,根据https://neo4j.com/docs/cypher-manual/current/syntax/values/,Neo4j 的类型范围已经大大拓宽,使得类型如 Date、Time、LocalTime、DateTime、LocalDateTime 和 Duration 可用。
不幸的是,仍然没有 guid/uuid ;)
【讨论】: