首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >选择主类别时显示子类别的复杂查询

选择主类别时显示子类别的复杂查询
EN

Stack Overflow用户
提问于 2016-12-05 13:41:38
回答 2查看 1.3K关注 0票数 2

我对编程很陌生,目前我正在尝试将主要类别+子类别显示为树。

已经创建了带有类别的菜单。现在,我想当我点击主类别名称加载所有产品的所有子类别分配给这个主要类别。问题是我不知道如何构造我的查询。

在我的表类别中,我存储了主猫和子猫。当我将子类别添加到某些主类别时,我会将主类别ID存储在parentID列下。

示例

代码语言:javascript
复制
ID       Name       parentID
426       Main Cat       0
427       sub-cat        426
428       sub-cat 2      426
429       Main cat 2     0

products表有categoryID

代码语言:javascript
复制
productID    categoryID
   1            427
   2            428
   3            429

因此,当我点击maincatID=1时,它应该向我展示id 1和2的产品,因为它们被分配给sub-cat,后者被分配给主cat 1。

我试过的这个查询

代码语言:javascript
复制
$masterCategory = '426';
$query="SELECT * from products  
LEFT JOIN categories on categories.categoryID = products.categoryID 
WHERE products.categoryID in (" . $masterCategory ."0)";

我应该得到两个产品时,我点击catid=426,因为我有两个产品添加到子程序,这是分配给catid=426 .产品1和2。

问题是,我有4-5空产品与NULL的一切。这不对。

Var_dump($query);返回

代码语言:javascript
复制
SELECT * from products  
LEFT JOIN categories on categories.categoryID = products.categoryID 
WHERE products.categoryID in (427,428,426,0)

var_dump($masterCategory);返回

代码语言:javascript
复制
string(12) "427,428,426,"

注意:我读过关于参数化查询的文章。为了测试目的,我在sql中添加了参数。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-12-05 14:34:42

尝试使用以下查询:

代码语言:javascript
复制
SELECT a.ID,c.productID,b.Name,b.parentID
FROM categories a JOIN categories b 
ON(a.ID=b.parentID)
JOIN products c
ON(b.ID=c.categoryID)
WHERE a.ID=<catid>;

卡蒂德是你必须要通过的主要身份。我已经用上面给出的数据模拟了这个结果,并且我得到了我预期的结果。

代码语言:javascript
复制
 ID   productID  Name       parentID  
 426  2          sub-cat 2  426       
 426  1          sub-cat    426
票数 2
EN

Stack Overflow用户

发布于 2018-05-10 09:32:22

这应该能行

代码语言:javascript
复制
SELECT * from products  
    LEFT JOIN categories on categories.categoryID = products.categoryID 
    WHERE categories.categoryID = 426 OR categories.parendID=426;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40975633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档