小编Jef*_*mes的帖子

自上次购买 postgres 后的天数(每次购买)

只要有一个标准的订单表:

  • 订单编号
  • 订购日期
  • 顾客ID
  • 合计订单

尝试编写一个查询,为每个客户生成一个列,显示自上次购买以来的天数。如果客户没有先前的订单,则该值将为零。

我试过这样的事情:

WITH user_data AS (
 SELECT customer_id, order_total, order_date::DATE,
   ROW_NUMBER() OVER (
     PARTITION BY customer_id ORDER BY order_date::DATE DESC
   )
   AS order_count
 FROM transactions
 WHERE STATUS = 100 AND order_total > 0
)
SELECT * FROM user_data WHERE order_count < 3;
Run Code Online (Sandbox Code Playgroud)

我可以将其输入到 tableau 中,然后使用一些表计算来处理数据,但我真的很想了解 SQL 方法。我的方法也只分析最近的 2 笔交易,这是一个缺点。

谢谢

postgresql

5
推荐指数
1
解决办法
737
查看次数

标签 统计

postgresql ×1