Mic*_*ner 5 sql datetime google-sheets google-forms google-data-studio
我试图使用包含日期列和日期时间列的CASE语句在Google Data Studio中创建一个字段。只要日期列'Start_Time'为NULL,则日期时间列'Given_Timestamp'不为NULL。
只要未填写“开始时间”,就必须从“ Given_Timestamp”中获取视觉效果的日期。我试过这个陈述
当Start_Time为NULL时的情况THEN TODATE(Given_Timestamp,'DEFAULT_DASH','%d%m%Y')ELSE Start_Time END
(请注意,TODATE(Timestamp,'DEFAULT_DASH','%d%m%Y')在表格视觉效果中列出日期时,格式与“开始时间”相同)。
抛出错误信息
'Failed to parse CASE statement.'
Run Code Online (Sandbox Code Playgroud)
我想念什么?
在源Google工作表中,“ Given_Timestamp”通过Google表单自动填写。由于datetime格式在Google Data Studio中不是标准格式,因此我必须将其作为字符串导入到Data Studio中。
我已经尝试将datetime列转换为单独字段中的date列,然后在CASE语句中使用该字段。在这种情况下,没有错误消息。但是,结果字段似乎存在问题。我不能将其用于任何视觉效果:
小智 2
您只能使用已在 CASE 语句中创建的字段。
因此,在这种情况下,您需要首先创建计算字段,例如
dateFromTimestamp = TODATE(Given_Timestamp, 'DEFAULT_DASH', '%d%m%Y')
然后在 case 语句中使用该字段
CASE WHEN Start_Time IS NULL THEN dateFromTimestamp ELSE Start_Time END
Run Code Online (Sandbox Code Playgroud)