Oracle SQL-如何显示所有类别以及每个类别引用的值总数
我有两个表,其中一列用作外键,并引用另一个表 我有一张桌子标为产品Oracle SQL-如何显示所有类别以及每个类别引用的值总数,sql,oracle,Sql,Oracle,我有两个表,其中一列用作外键,并引用另一个表 我有一张桌子标为产品 ID NAME CATEGORYID PRICE --- ----- ----------- ---------- 1 Apple 1 .5 2 Banana 1 .69 3 Watermelon 1 2.99 4 Cereal 1
ID NAME CATEGORYID PRICE
--- ----- ----------- ----------
1 Apple 1 .5
2 Banana 1 .69
3 Watermelon 1 2.99
4 Cereal 1 3.99
5 Large Chips 1 2.99
6 Small Chips 1 .99
7 TV 2 699
8 Phone 2 499
9 Computer 2 899
10 Laptop 2 1099
11 Headphones 2 39
另一张桌子也是
ID NAME
------ -----------------
1 Food
2 Electronics
“Category ID”是一个外键,它引用“Category”表中的“ID”。我要做的是显示第二个表以及属于每个类别的产品总数
例如,类别Id 1的总数为6,类别2的总数为5 您需要一个简单的
加入和分组方式
:
select ct.id as category_id,
ct.name as category_name,
count(pr.id) as number_of_products
from category ct
join product pr on ct.id=pr.category_id
group by ct.id,ct.name
提示:加入
,分组依据
。这是一个非常基本的SQL查询,看起来很像家庭作业(考试,随便什么)。这是可以的,但是你必须展示你已经尝试了什么,什么有效,什么无效,你发现什么困难或困惑,等等。仅仅通过一个简单的连接、分组和选择计数(*)看到其他人的解决方案对你没有任何帮助-也许它会让你的硬件完成,那又怎样?仍然没有从中学到很多东西。如果你试一下你的onw,它会给你更多的帮助,然后在这里报告哪些有效,哪些无效。那么你什么都没试过?