我正在与 Oracle 合作,遇到了我不知道如何解决的问题。我有很多商店,每家都卖 3 件商品。我需要从每家商店为这 3 件商品中的每件选择随机记录,但每家商店的记录数量不得超过 10 条,并且每家商店必须至少出售每件商品中的一件。
我现在的选择为每个商店选择了 10 条记录,但它选择了一项(通常是最后一项)
select *
FROM
(select store_id,item_id, product_name
row_number() over(partition by store_id order by item_id) as MyCount
from table5 order by dbms_random.value)
where MyCount<=10
如何让它为每个商店选择所有 3 个项目和 <=10 条记录?
样本数据:
Id Store_ID Item_ID Product_ID
------------------------------
1 11723 13048841 2
2 11723 13332688 2
3 11723 08981562 4
4 11723 08872923 4
5 11723 01030632 5
6 11723 01029557 5
7 11723 01010174 5
8 11723 01031526 5
9 11723 01032479 5
10 11723 01000285 5