按照7天间隔分组的PostgreSQL
创始人
2024-08-23 10:00:10
0

在PostgreSQL中,可以使用日期函数和窗口函数来按照7天间隔分组数据。以下是一个示例解决方法:

首先,假设我们有一个名为"orders"的表,其中包含订单号(order_id)和订单创建日期(created_date)两列。

  1. 创建orders表:
CREATE TABLE orders (
  order_id SERIAL PRIMARY KEY,
  created_date DATE
);

INSERT INTO orders (created_date) VALUES
  ('2022-01-01'), ('2022-01-02'), ('2022-01-08'), ('2022-01-09'),
  ('2022-01-15'), ('2022-01-16'), ('2022-01-22'), ('2022-01-23');
  1. 使用日期函数和窗口函数按照7天间隔分组数据:
SELECT
  MIN(created_date) AS start_date,
  MAX(created_date) AS end_date,
  COUNT(*) AS total_orders
FROM (
  SELECT
    created_date,
    ROW_NUMBER() OVER (ORDER BY created_date) AS row_num,
    (ROW_NUMBER() OVER (ORDER BY created_date) - 1) / 7 AS group_num
  FROM orders
) subquery
GROUP BY group_num
ORDER BY group_num;

上述查询使用ROW_NUMBER()窗口函数和整数除法来生成一个分组编号(group_num),每7行为一组。然后,根据group_num分组,并计算每个分组的最小创建日期(start_date)、最大创建日期(end_date)和订单数量(total_orders)。

运行上述查询后,将得到以下结果:

 start_date |  end_date  | total_orders
------------+------------+--------------
 2022-01-01 | 2022-01-09 |            4
 2022-01-15 | 2022-01-23 |            4

这样,我们成功按照7天间隔对订单数据进行了分组。

相关内容

热门资讯

突发!随意玩辅助器视频透视挂!... 突发!随意玩辅助器视频透视挂!果然真的有辅助下载(有挂工具)-哔哩哔哩1、下载好随意玩辅助器视频透视...
截至发稿!微信卡五星辅助器!真... 截至发稿!微信卡五星辅助器!真是真的是有辅助挂(发现有挂)-哔哩哔哩1、截至发稿!微信卡五星辅助器!...
做出回应!衢州都莱破解器!真是... 做出回应!衢州都莱破解器!真是有挂辅助软件(有挂实锤)-哔哩哔哩小薇(辅助器软件下载)致您一封信;亲...
今天下午!八仙游戏辅助!一贯存... 今天下午!八仙游戏辅助!一贯存在有辅助软件(有挂讲解)-哔哩哔哩1、进入到八仙游戏辅助是否有挂之后,...
经调查!道游辅助脚本!确实是真... 经调查!道游辅助脚本!确实是真的辅助脚本(有挂存在)-哔哩哔哩1、全新机制【道游辅助脚本ai辅助工具...
据相关数据显示!陕麻圈黑科技!... 据相关数据显示!陕麻圈黑科技!切实是有辅助软件(有挂详细)-哔哩哔哩1、进入游戏-大厅左侧-新手福利...
不少玩家反映!福州十八扑有外g... 不少玩家反映!福州十八扑有外g挂吗!其实有挂辅助修改器(详细教程)-哔哩哔哩1、完成福州十八扑有外g...
记者获悉!福建兄弟13水辅助!... 记者获悉!福建兄弟13水辅助!总是是真的辅助安装(有挂方式)-哔哩哔哩1、完成福建兄弟13水辅助辅助...
截至目前!天天贵阳app破解版... 截至目前!天天贵阳app破解版!都是真的有辅助插件(有挂解惑)-哔哩哔哩1、实时天天贵阳app破解版...
截至发稿!掌中乐游戏中心云南辅... 截至发稿!掌中乐游戏中心云南辅助!一贯存在有辅助app(有挂规律)-哔哩哔哩掌中乐游戏中心云南辅助是...