gpt4 book ai didi

mysql - 从节点父亲获取值时出错?

转载 作者:可可西里 更新时间:2023-11-01 07:45:28 24 4
gpt4 key购买 nike

我有一个示例数据:

product(id, parent_id, name)
1 | 0 | Windows
2 | 1 | XP
3 | 1 | 7
manufacturer(id, parent_id, name)
1 | 0 | Westwood Studios
2 | 1 | Red Alert 1
3 | 1 | Red Alert 2
product_manufacturer(product_id, manufacturer_id)
2 | 2
3 | 2
3 | 3

和mysql:

SELECT prod.name
FROM `manufacturer` AS child
INNER JOIN `manufacturer` AS parent ON parent.id=child.parent_id
INNER JOIN `product_manufacturer` AS pr_ma ON pr_ma.manufacturer_id=child.manufacturer_id
INNER JOIN `product` AS prod ON pr_ma.product_id=prod.product_id
WHERE parent.id=1
GROUP BY prod.id

parent.id=1 (manufacturer=Westwood Studios) 结果为 XP, 7

parent.id=1 结果为 Windows 时如何修复

最佳答案

SELECT prodparent.name
FROM `manufacturer` AS child
INNER JOIN `manufacturer` AS parent ON parent.id=child.parent_id
INNER JOIN `product_manufacturer` AS pr_ma ON pr_ma.manufacturer_id=child.manufacturer_id
INNER JOIN `product` AS prod ON pr_ma.product_id=prod.product_id
INNER JOIN product AS prodparent ON prod.parent_id=prodparent.id
WHERE parent.id=1
GROUP BY prod.id

关于mysql - 从节点父亲获取值时出错?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11219072/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com