为方便起见,该表包含英语词典中的所有单词。
我想做的是能够将数据存储为 trie。这样我可以遍历 trie 的不同分支并返回最相关的结果。
首先,如何将表中的数据存储为 trie?
其次,如何遍历树?
如果它有帮助,那么上一个问题中的建议就是引发这个问题的地方。
请确保它是我们正在谈论的 SQL。由于指针,我理解了Mike Dunlavey 的 C 实现,但看不到这部分(特里树本身)在 SQL 中是如何工作的。
谢谢,
马特
为方便起见,该表包含英语词典中的所有单词。
我想做的是能够将数据存储为 trie。这样我可以遍历 trie 的不同分支并返回最相关的结果。
首先,如何将表中的数据存储为 trie?
其次,如何遍历树?
如果它有帮助,那么上一个问题中的建议就是引发这个问题的地方。
请确保它是我们正在谈论的 SQL。由于指针,我理解了Mike Dunlavey 的 C 实现,但看不到这部分(特里树本身)在 SQL 中是如何工作的。
谢谢,
马特
您可以使用层次结构 ID 使用 SQL Server 2008 对数据层次结构进行建模。请参阅此 MSDN 杂志参考资料。
我认为您不需要在 DB 中实现 Trie。您可以简单地使用 like %~word% 查询,它的工作原理完全相同。我不知道您尝试在 DB 中实现 Trie 的原因,但这听起来效率很低。