【发布时间】:2011-07-05 14:09:11
【问题描述】:
我正在使用嵌套集来表示我的应用程序中的层次结构,并且想知道放置索引(集群或其他)的最佳位置在哪里。我正在使用 Microsoft SQL Server 2008。
操作:
- 每天大约 40 次,将在根目录下添加一个新层次结构。
- 层次结构可能永远不会被删除。
- parentId 在白天经常访问层次结构,以逐步填充组合框。
- 很少移动层次结构。可能甚至一个月都不会。
- 与其他表链接时,最大的访问是通过左右。这是迄今为止对层次结构最频繁的访问。
我曾尝试在左侧和右侧放置一个聚集索引(大多数情况下,它会使用 val BETWEEN @left AND @right 进行查询。但是在左侧和右侧进行聚集是正确的方法吗?
非常感谢在 SQL 索引方面比我更有经验的人!
目前的架构
_id INT IDENTITY NOT NULL
_idParent INT IDENTITY NULL
_name NVARCHAR(64)
_left INT NOT NULL
_right INT NOT NULL
【问题讨论】:
-
你能提供一个关于模式的想法吗?
标签: sql sql-server indexing nested-sets