Superset 3.0.0:将dd/mm/yyyy格式varchar日期转为可用日期字段报错求助
问题解决方法
错误根源
你在计算列中写了完整的SELECT ... FROM ...语句,这不符合Superset计算列的规则——计算列只需要单个字段的转换表达式,不需要完整的查询语句。另外,直接用CAST转换dd/mm/yyyy格式的字符串也不生效,因为MariaDB默认仅识别yyyy-mm-dd格式的日期字符串。
正确操作步骤
返回数据集编辑页面,重新创建计算列:
- SQL表达式:输入
STR_TO_DATE(periodDate, '%d/%m/%Y')(该函数会按照日/月/年的格式解析字符串,转换成标准DATE类型) - 标签:保留
periodDate_cast即可 - 类型选择
DATE(若Superset未自动识别)
- SQL表达式:输入
重新创建时间序列折线图:
- 时间列选择
periodDate_cast - 时间粒度设为
Year - 指标选
Sum(value) - 维度保持
periodDate_cast
- 时间列选择
按上述步骤操作后,就能正确解析日期字段并生成时间序列图了。
内容的提问来源于stack exchange,提问作者dia05
相关产品推荐
相关产品推荐

