如果我有这样一张桌子,
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
哪种结构最适合用于将路灯相关联在一起。例如我有路灯 1、2、3、4、5、6,我想说路灯 6 和 2 是相关的。例如,他们可能在同一条街上。
我可以通过哪些方式做到这一点?
我建议添加另一个表,
StreetLightGrouping
. 这个表应该有两列,StreetLightGroupId
和StreetLightId
。所有StreetLights
低于一个StreetLightGroupId
的都是同一组的一部分。另外,如果a
StreetLight
最多可以属于一个组,则可以在该StreetLightId
列上建立唯一约束。