CASE WHEN 在 Google Data Studio
CASE WHEN on Google Data Studio
我正在尝试在 Data Studio 上创建一个使用 "case when" 和函数 Date_diff 的字段。
我一直收到错误 "Could not parse formula"。
- 我是否需要指定两个日期之间的差异指标(就像我在 BigQuery 上所做的那样)?
- 我可以用数字而不是字符串来命名值吗(在 BigQuery 上尽可能这样做)?
- 我是否需要将所有字段都转换为日期格式,或者 Data Studio 会自行将它们识别为日期?
- 我可以使用函数 "Between" 吗?
我的最新版本(无法使用)如下:
case when date_diff(cast(checkin as date),order_date,day)>=0 and <=3 then 3
when date_diff(cast(checkin as date),order_date,day)>=4 and <=7 then 7
when date_diff(cast(checkin as date),order_date,day)>=8 and <=14 then 14
when date_diff(cast(checkin as date),order_date,day)>=15 and <=30 then 30
when date_diff(cast(checkin as date),order_date,day)>=31 and <=60 then 60
when date_diff(cast(checkin as date),order_date,day)>=61 and <=180 then 180
when date_diff(cast(checkin as date),order_date,day)>=181 and <=365 then 365
end
这是你的情况:
(case when date_diff(cast(checkin as date), order_date, day) >= 0 and <= 3 then 3
. . .
这没有意义。您可以将其表示为
(case when date_diff(cast(checkin as date), order_date, day) between 0 and 3 then 3
我更倾向于这样写:
(case when checkin >= order_date and checkin < date_add(order_date, interval 4 day)
根据基础列的类型,您可能需要进行各种转换才能完成这项工作。
我正在尝试在 Data Studio 上创建一个使用 "case when" 和函数 Date_diff 的字段。 我一直收到错误 "Could not parse formula"。
- 我是否需要指定两个日期之间的差异指标(就像我在 BigQuery 上所做的那样)?
- 我可以用数字而不是字符串来命名值吗(在 BigQuery 上尽可能这样做)?
- 我是否需要将所有字段都转换为日期格式,或者 Data Studio 会自行将它们识别为日期?
- 我可以使用函数 "Between" 吗?
我的最新版本(无法使用)如下:
case when date_diff(cast(checkin as date),order_date,day)>=0 and <=3 then 3
when date_diff(cast(checkin as date),order_date,day)>=4 and <=7 then 7
when date_diff(cast(checkin as date),order_date,day)>=8 and <=14 then 14
when date_diff(cast(checkin as date),order_date,day)>=15 and <=30 then 30
when date_diff(cast(checkin as date),order_date,day)>=31 and <=60 then 60
when date_diff(cast(checkin as date),order_date,day)>=61 and <=180 then 180
when date_diff(cast(checkin as date),order_date,day)>=181 and <=365 then 365
end
这是你的情况:
(case when date_diff(cast(checkin as date), order_date, day) >= 0 and <= 3 then 3
. . .
这没有意义。您可以将其表示为
(case when date_diff(cast(checkin as date), order_date, day) between 0 and 3 then 3
我更倾向于这样写:
(case when checkin >= order_date and checkin < date_add(order_date, interval 4 day)
根据基础列的类型,您可能需要进行各种转换才能完成这项工作。