首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从postgresql 14中的group by查询中获取中值

从postgresql 14中的group by查询中获取中值
EN

Stack Overflow用户
提问于 2021-11-14 12:26:53
回答 1查看 50关注 0票数 0

我有一个查询,其中一个列的类型为date,另一个列的类型为double precisiondate列称为trading_daydouble precision列称为stock_price。我想要一年2000中每个月的stock_price中值。

我的疑问如下:

代码语言:javascript
复制
select date_trunc('month',trading_day) as dt_trunc,median(stock_price) from data_price
where extract(year from trading_day) = 2000
group by dt_trunc

我不确定我的查询是否真的是正确的聚合和计算,我还认为在较新版本的PostgreSQL中存在中值函数。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-14 12:58:28

计算中位数的标准SQL方法是获得50%的连续百分位数。

代码语言:javascript
复制
select 
  date_trunc('month', trading_day) as dt_trunc
, percentile_cont(0.5) WITHIN GROUP (ORDER BY stock_price) as median
from data_price
where extract(year from trading_day) = 2000
group by dt_trunc
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69962973

复制
相关文章

相似问题

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