我有一个存储嵌套集的表。它存储由collectionid区分的不同嵌套集(是的,我在这里混合了术语,真的应该是nestedsetid)。它看起来有点像这样:
id | orgid | leftedge | rightedge | level | collectionid
1 | 123 | 1 | 6 | 1 | 1
2 | 111 | 2 | 3 | 2 | 1
3 | 23 | 4 | 5 | 2 | 1
4 | 67 | 1 | 2 | 1 | 2
5 | 123 | 3 | 4 | 1 | 2
6 | 600 | 1 | 6 | 1 | 3
7 | 11 | 2 | 5 | 2 | 3
8 | 111 | 3 | 4 | 3 | 3
最初我想利用 R-Tree 索引,但我为此看到的代码:LineString(Point(-1, leftedge), Point(1, rightedge))
不会很有效,因为它没有考虑到 collectionid 并且这个id :1 和id :6 最终会成为相同。
有没有办法可以在我当前的设置中使用 R-Tree 索引...当然你可以在同一个表中有不同的嵌套集?我的主要目标是能够使用MBRWithin 和 MBRContains函数。使用 MySQL 5.1