一个简单的点评系统,有2个表,product表 和 review表。
product表存放产品信息,review表存放点评信息。
现在希望找到,每个品牌下,被点评次数最多的产品ID。product表 结构 (每个产品一条记录)
product_id | brand_id | other product info......review表 结构 (每条点评一条记录)
review_id | product_id | other review info......
product表存放产品信息,review表存放点评信息。
现在希望找到,每个品牌下,被点评次数最多的产品ID。product表 结构 (每个产品一条记录)
product_id | brand_id | other product info......review表 结构 (每条点评一条记录)
review_id | product_id | other review info......
解决方案 »
- 【100分在线等】初用Oracle求定时器相关解决方案
- 模式和表空间有什么区别?
- 问题:如何在JAVA中设置ORACLE中自定义TABLE类型(tUserList) 的 LIST 传递给存储过程 ?
- 高分急问,关于dbms_output.put_line
- 好象是游标的问题
- exp怎么做增量备份?===============exp怎么做增量备份?
- 为什么创建的表,不是归属于它应该属于的表空间,而归属于某一个用户名?
- clob,blob,pfile分别是什么?做什么用的?大概讲讲就行
- 希望在数据库中新建一用户,并且该用户只能访问指定的几个表!如何创建该用户??
- 装了9i,死活启动不了Enterprise Manager Server?帮帮我吧!
- 入门级问题 oracle 11g提供的管理器是web版的?有无类似sqlserver企业管理器的工具?
- Oracle 9i 创建过程出现问题,帮忙解决下!
SELECT P.PRODUCT_ID,P.BRAND_ID,COUNT(*) BRAND_COUNT
FROM PRODUCT P,REVIEW R WHERE P.PRODUCT_ID=R.PRODUCT_ID GROUP BY P.PRODUCT_ID,P.BRAND_ID)
GROUP BY P.PRODUCT_ID,P.BRAND_ID
select distinct
tt.brand_id,
first_value(tt.product_id) over(partition by tt.brand_id order by tt.count_pros desc)
from (
select p.brand_id,
p.product_id,
count(r.review_id) as count_pros
from product p,
review r
where p.product_id = r.product_id
group by p.brand_id,
p.product_id
)tt;