首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >数据库邻接列表模型-在一个查询中获取所有相同级别的父级?

数据库邻接列表模型-在一个查询中获取所有相同级别的父级?
EN

Stack Overflow用户
提问于 2014-04-05 13:02:44
回答 1查看 339关注 0票数 1

我有两张桌子。

代码语言:javascript
复制
nodes (nid, ntid, parent, title)

nid是节点id (主键),ntid是表noteTypes的外键。

noteTypes (ntid, name) -这个表只有4行

  • 1,书
  • 第2章
  • 第3条
  • 4,科

我需要显示特定节点的所有相同级别的父级。示例:我收到nid = 123,这是文章的id,我需要获取所有章节(以便在我的node.js应用程序中选择移动文章的位置)。

我已经做了三个查询:

1)获取nid=123的父id (返回12,这是文章父级的id )

2)获取nid=12的父类型(返回2,这是本章)

3)获取父type=2的所有节点(返回所有章节)

有了这个数据库模型,可以只使用一个查询,而不是3个查询吗?

EN

回答 1

Stack Overflow用户

发布于 2014-04-05 14:08:33

因为您知道所需的确切级别,所以可以创建一个查询(Mysql不允许递归,这将允许您动态遍历关系)。

代码语言:javascript
复制
SELECT all_articles.*
FROM nodes AS articles
JOIN nodes AS chapter
  ON articles.parent = chapter.nid
JOIN nodes AS all_articles
  ON all_articles.parent = chapter.nid
WHERE articles.nid = 123;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22881257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档