我对图形数据库非常陌生,所以请忽略我的错误。下面的图片描述了我的场景:

我有不同的位置连接彼此之间的一条路线。那我就有很多与路线相连的商店了。
我创建了如下所示的RDBMS模式:

我的目标是在两个被询问的地点之间提供可能的路线和出口。
最近,我听说了Server 2017中的图形数据库支持,并阅读了这文章,但无法连接到我当前的问题。
请帮助我在Server 2017中创建图表和节点表。
谢谢!
现在我创建了一个数据模型:

一些Node和Edge表如下:
CREATE TABLE [dbo].[mRoute](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](500) NOT NULL,
PRIMARY KEY CLUSTERED
(
[ID] ASC
)ON [PRIMARY]
)
AS NODE ON [PRIMARY]
GO
CREATE TABLE [dbo].[mCity](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](500) NOT NULL,
PRIMARY KEY CLUSTERED
(
[ID] ASC
)ON [PRIMARY]
)
AS NODE ON [PRIMARY]
GO
CREATE TABLE [dbo].[mOutlet](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](500) NOT NULL,
[Latitude] [decimal](11, 9) NULL,
[Longitude] [decimal](11, 9) NULL,
PRIMARY KEY CLUSTERED
(
[ID] ASC
)ON [PRIMARY]
)
AS NODE ON [PRIMARY]
GO
CREATE TABLE [dbo].[LinkedTo]
AS EDGE ON [PRIMARY]
GO
CREATE TABLE [dbo].[On]
AS EDGE ON [PRIMARY]
GO现在我被困在Between边缘表上,它包含两个城市之间的路线。
发布于 2018-12-04 12:19:59
SQL Server的图形功能是目前,在新的匹配子句中,它实际上只是一个小的语法糖。不支持任何严肃的面向图形的算法。为了实现您的目标,您将最终使用递归的CTE,这并不能很好地处理匹配问题。虽然解决方案是可能的,但它不会是优雅的。很抱歉成为坏消息的传达者。
为了了解图形设计和算法,我建议从特定的图DBMS开始。Neo4j浮现在脑海中。否则,你将把所有的时间都花在工作上--周旋,永远看不到全局。
https://dba.stackexchange.com/questions/224056
复制相似问题