将表链接在一起

pet*_*ter 1 sql-server

如果我有一张这样的桌子,

CREATE TABLE [dbo].[StreetLight](
    [Id] [int] IDENTITY(1,1) NOT NULL,
    [Description] [nvarchar](50) NOT NULL,
    [Shape] [geometry] NOT NULL,
 CONSTRAINT [PK_StreetLight] PRIMARY KEY CLUSTERED 
(
    [Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY]

GO
Run Code Online (Sandbox Code Playgroud)

哪种结构最适合用于将路灯相关联地连接在一起。例如我有路灯 1、2、3、4、5、6,我想说路灯 6 和 2 是相关的。例如,他们可能在同一条街上。

我有哪些方法可以做到这一点?

小智 6

我建议添加另一个表,StreetLightGrouping. 这个表应该有两列,StreetLightGroupIdStreetLightId。所有StreetLights下一个StreetLightGroupId都是同一组的一部分。

此外,如果 aStreetLight最多可以属于一个组,则可以在该StreetLightId列上建立唯一约束。