mysql - 无法通过 Google Data Studio 中转换的 mysql 时间戳对条形图进行排序

标签 mysql datetime timestamp bar-chart looker-studio

我已使用标准连接器将 Google data studio 与 MySQL 数据库链接起来。除了按日期正确排序之外,一切正常。

数据库列配置如下:

  • 价格 小数(15,2) 不为空24.59
  • last_changed时间戳不为空2019-03-25 19:24:52

GDS 数据源字段配置如下(按照此 answer ):

  • last_changed 日期(YYYYMMDD) 2019-03-25
  • sold_at GDS 函数TODATE(last_changed, 'DEFAULT_DASH', '%Y%m%d')

GDS 条形图配置如下:

  • 时间维度 sell_at 截至日期
  • 尺寸已售出截至日期
  • 值(value)指标价格总和
  • 排序 sell_at 按日期升序
  • 时间范围自动开始日期选择器,默认设置为当前月份

我遇到以下问题:排序设置为sold_at时,条形图为空,并显示默认日期范围。仅当我返回至少一个月时,它才会在图表中显示值,但也会截断最后一天,使其小于应有的值。仅当排序设置为价格时,它才能正确显示所有内容,即使在当月也是如此。此外,当选择默认时间范围时,从排序设置为价格切换到sold_at时,它会显示sold_at字段在排序模式中的无效下。

我尝试将数据库列修改为日期时间而不是时间戳,但它没有改变任何内容。我还尝试设置不同的默认时间范围,但这也不会改变任何内容。 1个月前一直显示没有数据。

有任何想法或已经偶然发现这种情况的人吗?

最佳答案

对于遇到同样问题的人:

此问题是由 MYSQL 时间戳/日期时间列具有可选的小时:分钟:秒引起的。这导致 GDS mysql 查询无法按天对它们进行分组,从而导致超过 100000 行,这超出了连接器设置的硬编码限制。

解决方案:添加另一个时间戳/日期时间列并填充它

更新表 SET newcolumn = DATE_FORMAT(oldcolumn, '%Y/%m/%d');

它现在就像一个魅力。

关于mysql - 无法通过 Google Data Studio 中转换的 mysql 时间戳对条形图进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56715851/

相关文章:

FFmpeg 时间戳

mysql - 如何查询 Eloquent ORM 多对多关系

ruby-on-rails - 在 Rails 中使用 I18n.l 和 %p 时,AM/PM 不是大写

flutter - Flutter 中的无效日期格式 2022 年 11 月 14 日

MySQL 日期时间与带有时区的 TIMESTAMP

java - 从 "datetime-local"到 java.sql.Timestamp 的转换

mysql - 将 mysql 数据库导出到 csv 文件的工具

mysql - 使用 MySQL 函数将记录插入表中

javascript - 如何使用 Vue JS 遍历数组的值?

c# - DateTime.TryParseExact 仅适用于 "One Way"