我试图弄清楚如何在MS Access DB中存储分层类型信息,以便查询更快。用例示例可能更有意义。
\a\b\c\d
\a\b\c\d\e
\a\b\c\d\f\g
\a\b\h
\a\b\i\j
此时:
where [hierarchy] like '\a\b\*'
join on [hierarchy] like '\a\b\*'
。 但它可能会很慢。特别是如果我的联合变得复杂。
所以我想也许有一种方法可以创建另一个表,它将保留所有层次结构,并且它将保持父/子关系,第一个表将引用其中的一行。然后,不知何故,我可以使用它来查找第一个表中与第二个表中的层次结构和子层次结构匹配的行。
然而,我不知道这是否可能,以及我将如何进行。任何建议都表示赞赏。
答案 0 :(得分:1)
在Oracle中,我们使用层级结构,其中每一行都有对其父级的引用。然后使用CONNECT BY子句,您可以将这些行彼此连接起来。