SQL:2003 (PGQ) 中 Cypher 查询语言、GQL、PGQL 和属性图查询的公共子集是什么?

问题描述 投票:0回答:1

Cypher 查询语言已在 Neo4J 中流行起来,并正在标准化为 openCypher。 openCypher 页面提到了 SQL/GQL,但GQL 页面最后一次更新是在 2019 年。同时 SQL:2023 标准包括一个关于属性图查询的部分,称为 SQL/PGQ。不幸的是 SQL:2003 不是公开的,所以我只能猜测细节。然后是 PGQL,由 Oracle 驱动,因此 PGQL 似乎与 SQL/PGQ 相同,其语法看起来像是 Cypher 的子集,但我不会惊讶地发现每种语言中的表达式不能用于其他语言。

我认为非常简单的查询表达式(例如

MATCH (a:b {c:42})
)可以安全地在所有这些语言中使用,但是更复杂的属性、带引号的字符串、列表值、返回类型、限制等呢?在这些查询语言中是否存在安全且正式定义的具有相同语义的 Cypher 查询子集?

sql cypher opencypher property-graph
1个回答
0
投票

是的,你已经掌握了它的基本要点。 SQL/PGQ 的想法是将 Cypher

MATCH
图“主题”引入 SQL 查询语言。截至目前,只有一个关系数据库引擎在 GA 版本中支持此功能,那就是 Oracle (23.1)。他们还不支持 SQL/PGQ 的整个 SQL:2023 规范,但您可以通过他们的文档了解如何表达这些类型的查询:https://docs.oracle.com/en/database /oracle/property-graph/23.1/spgdg/sql-graph_table-queries.html

© www.soinside.com 2019 - 2024. All rights reserved.