【发布时间】:2017-04-27 17:07:00
【问题描述】:
我有 3 个这种格式的表格:
表子:
id|parent_id|grandparent_id
1 1 null
2 2 null
3 3 null
父表:
id|grandparent_id
1 1
2 1
3 2
表祖父:
id
1
2
我需要运行一个查询,根据 Parent 表中的 grandparent_id 更新 Child 表中的 grandparent_id 列。所以 Child 表的正确最终形式将是: 表子:
id|parent_id|grandparent_id
1 1 1
2 2 1
3 3 2
这是我目前的查询,但它返回多于 1 行,这是错误的:
update child set grandparent_id = (
select gpd.id from GrandParent gp, Parent p
where p.grandparent_id = gp.id)
where 1
【问题讨论】:
标签: mysql sql subquery nested-queries