gpt4 book ai didi

sql - mysql查询获取列中每个元素的计数

转载 作者:行者123 更新时间:2023-11-30 23:43:16 25 4
gpt4 key购买 nike

我有一个名为类别的表,其中我有主要类别 ID 和名称,每个主要类别都有子类别 ID 和名称。我还有一个带有类别 ID 列的产品表,该列具有数字子类别 ID 或2 个字母的主要类别 ID 例如:电子产品的 EL..我的问题是如何获得顶级类别,即每个类别中的产品数量按降序排列。

category
{
sub_cat_id - numeric
sub_cat_name - varchar
main_cat_id - varchar (2 characters)
main_cat_name
}
products
{
categoryid,//this can be either main_cat_id or sub_cat_id
}

请帮忙....

最佳答案

如果主类别 ID 和子类别 ID 之间没有命名空间冲突,您可以:

select main_cat_id , count(*) as total
from category
where ( main_cat_id in (select categoryid from products)
OR
sub_cat_id in (select categoryid from products)
)
group by main_cat_id
order by total desc

但是,乍一看,类别表的设计似乎有问题。 sub_cat 应该是具有适当约束的不同表。

关于sql - mysql查询获取列中每个元素的计数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/506279/

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