咨询Neo4j Cypher查询中标签、列别名的合法命名规则文档位置
Cypher标签与列别名命名规范的官方参考位置
其实你查阅的两份资料里已经包含了相关规则,只是需要聚焦到具体细节:
节点/关系标签的命名规则
标签属于Cypher的「标识符」范畴,相关规则如下:- 不加反引号的标签必须以字母(a-z、A-Z)开头,可包含字母、数字(0-9)、下划线(_)和美元符号($),且不能是
MATCH、WHERE这类Cypher保留关键字。 - 如果标签包含空格、特殊字符,或是本身就是保留关键字,必须用反引号(
)包裹,比如User_Profile是合法的无引号标签,而User Profile或MATCH则要写成User Profile、MATCH`。
- 不加反引号的标签必须以字母(a-z、A-Z)开头,可包含字母、数字(0-9)、下划线(_)和美元符号($),且不能是
列别名的命名规则
列别名同样遵循标识符规则,同时有更灵活的处理方式:- 常规别名直接套用标识符规则即可,比如
RETURN user.name AS userName。 - 若别名需要包含空格、特殊字符或保留关键字,用反引号包裹即可,比如
RETURN user.name ASFull User Name``;部分场景下也可使用双引号,但反引号是通用兼容的写法。
- 常规别名直接套用标识符规则即可,比如
openCypher 9规范文档里的「词法结构」章节下的「标识符」部分,也明确了这套统一规则,标签和列别名均适用。
内容的提问来源于stack exchange,提问作者benleis
相关产品推荐
相关产品推荐

