永洪社区
标题: 如何判断连续三分钟内的销售数量 [打印本页]
作者: yhdata_WV09cc5P 时间: 6 小时前
标题: 如何判断连续三分钟内的销售数量
我想计算连续三分钟之内,累计销售数量是否超过500,目前只能想到把时间戳精确到5分钟,但只能是整点0-5分,想问问社区的大神们有什么办法解决?
这是基础数据,主要看时间是连续三分钟内的数量之和。
作者: 朝花夕拾 时间: 6 小时前
本帖最后由 朝花夕拾 于 2024-11-28 14:28 编辑
你现在只说了个窗口大小,那滑动步长是多久,比如每隔多久的3分钟内。
另外我看你这个销售时间都没有在同一天的,需要精确到分钟吗
作者: yhdata_WV09cc5P 时间: 6 小时前
就是从每一行开始算起的三分钟内 如果第一行时间是14:05:00 销售数量是300,下面一行是14:06:00 销售数量是300 那这就算三分钟内超500
作者: yhdata_WV09cc5P 时间: 6 小时前
现在只能做到这样
作者: 朝花夕拾 时间: 6 小时前
这个数据在数据库中吗,用开窗函数容易解决
作者: yhdata_WV09cc5P 时间: 5 小时前
在的 开窗函数具体怎么用 有相关教程贴吗
作者: 朝花夕拾 时间: 5 小时前
是oracle或者mysql8以上吗
- SUM(销售数量)OVER(PARTITION BY 1 ORDER BY 销售时间 RANGE BETWEEN current row and INTERVAL '3' MINUTE following) 三分钟内数量之和
复制代码
参考:https://www.cnblogs.com/fjhh/p/4036618.html
作者: yhdata_WV09cc5P 时间: 5 小时前
但是我们这个数据库只有查看权限 不能编辑 而且我也不会编辑
作者: 朝花夕拾 时间: 5 小时前
啊,我这个就是查询语句啊,有查看权限就行了,你可以把你的数据库配置为永洪的数据源,然后在SQL数据集中进行编辑SQL
作者: 朝花夕拾 时间: 4 小时前
来自AI的答案,直接用WPS表格做
- 计算每个时间点未来三分钟的数量
- 1. 在G列(可根据实际自行选择列位置)第一个单元格输入公式,以计算第一个时间点(F2单元格,假设数据从第二行开始,第一行是标题行)未来三分钟的数量为例:
- - 公式思路是通过循环遍历其他时间点,判断是否在当前时间点未来三分钟内,如果是则累加对应的数量。在WPS表格中可以使用SUMIFS函数结合条件判断来近似实现这个功能。
- - 在G2单元格输入公式:
- ```
- =SUMIFS($B:$B,$F:$F,">"&F2,$F:$F,"<="&(F2+TIME(0,3,0)))
- ```
- - 公式解释:
- - `SUMIFS`函数用于根据多个条件对指定区域求和。
- - `$B:$B` 是要求和的数量所在列的区域,这里固定列引用,以便向下拖动公式时列不变。
- - `$F:$F` 是时间数据所在列的区域,同样固定列引用。
- - `">"&F2` 表示条件是时间要大于当前时间点(F2单元格的时间)。
- - `"<="&(F2+TIME(0,3,0))` 表示条件是时间要小于等于当前时间点加上三分钟(通过 `TIME(0,3,0)` 函数生成三分钟的时间间隔并与当前时间点相加)。
- 2. 输入完公式后,按下回车键,即可得到第一个时间点未来三分钟的数量。
- 3. 然后将鼠标移到G2单元格右下角,当光标变成黑色十字时按住鼠标左键向下拖动,可将公式应用到整列,从而计算出每个时间点未来三分钟的数量。
- 以上步骤在实际操作过程中可能需要根据你的具体数据布局和格式进行适当调整,但基本思路就是先将时间数据处理成可计算格式,然后利用函数来进行条件判断求和以得到每个时间点未来三分钟的数量。
复制代码
作者: yhdata_WV09cc5P 时间: 4 小时前
这个方法不会用,还有没有什么组件或者计算字段可以实现这个功能
作者: 朝花夕拾 时间: 4 小时前
(, 下载次数: 0)