首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Oracle SQL -分发到桶中

Oracle SQL -分发到桶中
EN

Stack Overflow用户
提问于 2017-08-02 19:20:53
回答 1查看 2.1K关注 0票数 2

我正在搜索智能oracle sql解决方案,以便将数据分发到多个存储桶中。X的顺序很重要。我知道有很多算法,但我很确定必须有智能sql (解析函数)解决方案,例如NTILE(3),但我不明白。

代码语言:javascript
复制
x|quantity
1|7
2|4
3|9
4|2
5|10 
6|3
8|7
9|7
10|4
11|9
12|2
13|10 
16|3
17|7

结果应该是这样的:

代码语言:javascript
复制
x_from|x_to|sum(quantity)
1|4|22

...and等

提前感谢

时间

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-08-02 19:32:47

这个例子将表划分为4个桶(ntile( 4 )):

代码语言:javascript
复制
SELECT min( "x" )  as "From",
       max( "x" ) as "To",
       sum("quantity")
FROM (
   SELECT t.*,
          ntile( 4 ) over (order by "x" ) as group_no
   FROM table1 t
)
GROUP BY group_no
ORDER BY 1;
代码语言:javascript
复制
| From | To | SUM("QUANTITY") |
|------|----|-----------------|
|    1 |  4 |              22 |
|    5 |  9 |              27 |
|   10 | 12 |              15 |
|   13 | 17 |              20 |
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45469308

复制
相关文章

相似问题

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