Mysql 合并来自不同查询的结果

Mysql 合并来自不同查询的结果,mysql,sql,subquery,inner-join,Mysql,Sql,Subquery,Inner Join,我有一个简化的表格设置,如下所示: select product_id, CONCAT('I.category_name,'/',E.slug,'-detail') as link from products C left join product_names E on C.product_parent_id=E.product_id left join category H on E.product_id=H.product_id where C.product_id > 1 group

我有一个简化的表格设置,如下所示:

select product_id, CONCAT('I.category_name,'/',E.slug,'-detail') as link from products C left join product_names E on C.product_parent_id=E.product_id left join category H on E.product_id=H.product_id where C.product_id > 1 group by C.product_id
表1(产品)

表2(类别)

表3(产品名称)

对于产品_id 646,我希望获得产品_id 45的类别和产品646的slug,并将它们合并到一个输出中

因此,基本上结果应该是:

   id  link
   646 category_1/product646-details-detail
到目前为止,我有以下几点:

select product_id, CONCAT('I.category_name,'/',E.slug,'-detail') as link from products C left join product_names E on C.product_parent_id=E.product_id left join category H on E.product_id=H.product_id where C.product_id > 1 group by C.product_id

基于产品id而不是父项id来获得E.slug结果的方法是什么

select p.product_id, c.category_name, pn.slug
from products p
inner join category c on c.product_id = p.product_parent_id
inner join product_names pn on pn.product_id = p.product_id
where p.product_id = 646
select product_id, CONCAT('I.category_name,'/',E.slug,'-detail') as link from products C left join product_names E on C.product_parent_id=E.product_id left join category H on E.product_id=H.product_id where C.product_id > 1 group by C.product_id
select p.product_id, c.category_name, pn.slug
from products p
inner join category c on c.product_id = p.product_parent_id
inner join product_names pn on pn.product_id = p.product_id
where p.product_id = 646