我想按月绘制时间序列,但我的输入数据格式为"%Y-%m-%d“。因此,我使用以下公式创建了另一个时间维度:
TODATE(date, "%Y%M")我的问题是,新的维度比应该的晚了一个月。例如,输入日期'2017-08-15‘会导致'2017-07’(或者该信息在任何data studio的内部日期结构中)。结果是,时间序列指标的变化似乎比实际发生的时间早了一个月。下面是一个带有google sheets数据和结果图的玩具示例的屏幕截图。请注意,时间序列图设置为cumulative:
8月份计数增加的数据:

显示7月份计数增加的时间序列图:

2017年8月数量的增加似乎发生在7月份。虽然这些数据来自工作表,但我的实际问题中的数据来自Postgres DB表,所以我认为这不是数据源的问题。我做错了什么?
发布于 2019-05-06 19:31:19
类似的问题:
todate(date, 'DEFAULT_DASH', "%m %Y")导致了一个月后的“月、年”配置。解决方案(对我来说):首先使用包含日期的todate函数(即todate(date, 'DEFAULT_DASH', "%d %m %Y"),然后将日期格式设置为年、月(YYYYMM)。
发布于 2019-08-12 20:05:07
列出的解决方案中没有一个对我有效。然而,我注意到,
TODATE(start_date,'%Y%m%d','%m')给正确的月份。
因此,我选择了一种过度杀伤力:
CONCAT(TODATE(start_date,'%Y%m%d','%Y'),TODATE(start_date,'%Y%m%d','%m'))发布于 2018-02-21 11:05:25
这是一个非常简单的修复,不确定我是如何忽略它的。不使用函数TODATE(),只需将数据类型字段中的日期格式更改为YYYYMM即可。我必须假设这个字段对应于输入格式,而不是输出:

https://stackoverflow.com/questions/46119033
复制相似问题