问题标签 [sql-graph]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
40 浏览

sql-server - SQL Server 图形数据库

我想知道是否可以将图形数据库添加到 AOAG。我知道它不能使用复制,但想知道 AOAG 是否支持它。

0 投票
1 回答
76 浏览

sql-server - SQL Server Graph:如何识别子图?

我有 [Friends] 节点和 [Link] 边缘。我的任务是找出哪个朋友属于哪个子图(网络)。对此的简单说明: 在此处输入图像描述

这是我如何构造节点、边和填充数据的代码:

我有代码,如何列出所有可能的路径:

但是,我很难在这里添加网络标识符(唯一的数字,文本,没关系):( 也许有人有以前的经验,可以帮忙吗?

预期结果是:

简而言之,我需要方法如何为这些网络赋予唯一的名称,并与人进行映射。

0 投票
1 回答
71 浏览

sql-server - SQL Server Graph Tables - 浏览某些节点以找到结束

我有一个包含 2 个节点表和 1 个边缘表的图表结构。

Symptom表是 Node 表,Syndrome_Causes是 Edge 表。此外,还有另一个名为Syndrome的节点表。

我的目标是有一个查询,我可以遍历我的图,通过特定的节点。

我编写了以下查询以向您显示所有可能的路线,从“心血管”节点开始,但我需要过滤掉通过路径的结果,在下图中用红色下划线(心血管->心悸->持续时间->间隔->天)。

在此处输入图像描述

我曾考虑在WHERE子句中添加另一个过滤条件,但我不知道如何编写它,以便我限制节点仅通过“链接”列中的值。

请注意,我知道,我可以将链接列中的值传递给它以过滤行并让我获得列中的“天”值last_match,但我的目的是通过遵循特定路径通过节点来过滤它(验证) ,如下所示:

但是,这给出了一个错误:

别名或标识符“s2.symptom_name”不能用于选择列表、排序依据、分组依据或具有上下文。

那么,有没有办法限制路径搜索通过某些节点?

0 投票
1 回答
51 浏览

sql-server - SQL Server 图表以获取连接到节点的多个节点类型

我计划在我的一个项目中使用 SQL Server 2019 图形功能。数据方案如下图所示。

给定用户(ID:2356,名称:Mark),我想检索用户的追随者完成的所有帖子和推文,这些帖子和推文由发布时间或推文时间以及整体结果的限制/分页排序.

到目前为止,除了进行 2 个单独的查询和手动处理分页之外,我不知道有更好的方法,如果我们将来除了 Posted/Tweeted 之外添加另一种新的边缘类型,这将使​​其效率低下而且也很麻烦。

是否有更好的方法来解决 SQL Server 图中的此类用例?

我的图表数据

0 投票
2 回答
83 浏览

sql-server - SQL Server:具有软删除功能的 Graph-DB 未按预期工作

我尝试在 SQL Server 中使用图形功能。现在我遇到了软删除问题。

我有以下图表

当我运行以下脚本时

(提示:这只适用于 SQL-Server 2019)

我得到以下结果

ID_SOURCE ID_TARGET ID_CHAIN
1 2 2
1 4 2->4

没有优势2->4,但是2->9->4。但是节点 9 被删除,因此它用于图遍历,但在输出中被抑制。

这是 SQL-Server 中的错误还是我做错了什么?

还是有另一种方法我应该使用 Graph-DB 的软删除?

0 投票
1 回答
161 浏览

sql-server - SQL Server 图形数据库 - 使用多种边类型的最短路径

我已经对 SQL Server GraphDB 进行了研究,但到目前为止我发现的所有人为示例都只使用了一个边表。例如,它总是Person-friend_of->Person。就我而言,我在我们的数据中心创建了一个已部署软件组件的图表,并且存在不同的边缘/关系。Application-connects_to->SqlDatabase和之类的东西Server-hosts->Application

我想编写一个查询,它将向我显示任意两个节点之间的最短路径,而不管使用的边缘如何。我想如果我使用 Neo4j,我会这样写MATCH

Server-*->SqlDatabase注意星号。

在 SQL Server 中是否有惯用的方法来执行此操作?

0 投票
1 回答
83 浏览

sql-server - 如何在 SQL Graph 表中创建递归边?

最近一位客户询问如何创建一个节点,其边缘递归地指向同一个节点。用例围绕一个产品“推荐”另一个产品的概念。这是一个概念图。

在此处输入图像描述

0 投票
1 回答
56 浏览

graph - SQL 图数据库 VS Cosmos Gremlin 图数据库

我一直在思考 SQL 图数据库和 Cosmos 图数据库的优缺点,据我了解,SQL 图数据库是使用节点和顶点,但它仍然将所有信息存储在表中。

所以我的问题是,如果图形数据可以由图形数据库处理,使用 SQL 图形数据库有什么优势?与原始图数据库相比,它的附加值是多少?