如何从单个 MySQL 查询中获取 Parent 的所有子记录 [重复]
Posted
技术标签:
【中文标题】如何从单个 MySQL 查询中获取 Parent 的所有子记录 [重复]【英文标题】:How to get all child records by Parent from a single MySQL Query [duplicate] 【发布时间】:2014-06-10 07:24:20 【问题描述】:我有一个具有父子关系的 mysql 表。当我提供父 ID 时,我需要更新所有子记录的一个字段。父级在表中可以有无限的子级。
我的桌子是这样的
ID 名称 ParentID
1个
2 b 1
3 c 2
4 天 1
我该怎么做?
谢谢
【问题讨论】:
【参考方案1】:select * from Child where parent_id in(select parent_id from Parent)
上面的例子应该适合你,也总是提到你在问题中尝试过的东西。
更好的解决方案 创建不同的表,如父、子、大子。 Parent Id 应该存在于 Child 表中,而 Child_id 应该存在于 Grand Child 表中。这将解决您的问题。
【讨论】:
感谢您的建议。但这对我不起作用。我所有的记录都在一张桌子上。其中有 ParentID 列。 那么,父条目(Parent_id)在您的表中为每个孩子重复? 是的..我的桌子是这样的 ok.. np.. select * from table where parent_id = 4 不起作用?你能分享你正在尝试的查询吗? 我需要列出所有子记录...例如,如果我说父 ID 1 我需要列出所有 2,3,4.. 3 还需要列出,因为 1 是祖父母3. 像这样我有无限级别的子记录以上是关于如何从单个 MySQL 查询中获取 Parent 的所有子记录 [重复]的主要内容,如果未能解决你的问题,请参考以下文章