【发布时间】:2011-08-21 18:39:01
【问题描述】:
我的数据库中有一个类别树。 我还有一个按类别 ID 与树相关联的项目表。
现在,我想列出特定类别中的所有项目及其子项及其子项等...
现在,我这样做:
- 检索所有相关类别的 ID。
- 在 items 表中使用 WHERE 子句进行查询,如下所示:WHERE cat_id=2 OR cat_id=10 OR ...
如果我有很多类别,我认为这种方式会导致查询很慢而且很长。有时,搜索可以包含 100 个类别。
有更好的做法吗?
【问题讨论】:
-
我会说首先是太看索引并且可能对查询运行解释(只需在选择之前放入解释并查看结果)。甚至可以发布一个简单版本的表格(几行)和您现在正在使用的查询。
-
如何将树存储在数据库中?
-
请提供您的实际 SQL 语句供人们查看。如果您还没有这样做,请尝试一下。数据库非常快。
-
在不了解您的数据的情况下,无法为您提供指导,请参阅此问题以获取选项:stackoverflow.com/questions/4048151/…
标签: php mysql tree hierarchical-data hierarchical