在MySQL中选择外键限制
我有两张桌子。Products and Products-sub.我想展示每种产品的所有可用颜色,并提供相应的图片 因此,我的产品表包含: 身份证、姓名、描述 我的产品子表包含: id,父id,颜色,图片 我想选择一个产品的所有颜色和图片,并显示在页面上。但我不想在同一页上显示所有产品在MySQL中选择外键限制,mysql,Mysql,我有两张桌子。Products and Products-sub.我想展示每种产品的所有可用颜色,并提供相应的图片 因此,我的产品表包含: 身份证、姓名、描述 我的产品子表包含: id,父id,颜色,图片 我想选择一个产品的所有颜色和图片,并显示在页面上。但我不想在同一页上显示所有产品 select p.name, s.color, s.pic, p.id from products-sub s inner join products as p on p.id = s.parentID
select p.name, s.color, s.pic, p.id
from products-sub s
inner join products as p on p.id = s.parentID
这是我当前的查询,我需要50个唯一的s.parentID。一个解决方案是使用具有限制的子查询在父表上联接,例如
如果您想要50种产品,请使用子查询:
select p.name, s.color, s.pic, p.id
from products_sub s inner join
(select p.*
from products p
limit 50
) p
on p.id = s.parentID;
当然,这假设所有产品都至少有一个子项。您的问题是什么?如何限制唯一外键。。。就像我想要一个产品的所有颜色,但我想要50个唯一的产品你可以在子查询中加入一个限制:join SELECT*FROM products limit 50p@shmosel你是个救生员。我应该删除这个问题吗?或者你把答案贴出来,我会记下来你也有正确的答案。但是shmosel先告诉我的。没有不愉快的感觉,兄弟。谢谢你,顺便说一句
select p.name, s.color, s.pic, p.id
from products_sub s inner join
(select p.*
from products p
limit 50
) p
on p.id = s.parentID;