我试图阻止一个窗口,在我的脚本中,这将归因于一个7天的窗口销售。我的问题是,我希望七天的窗口不包括开放日期=0,销售窗口从第一天开始。下面是我创建该窗口的当前方式-
and oh.Order_Date >= first_open_date.first_open
and oh.Order_Date <= first_open_date.first_open + 7发布于 2022-04-07 18:19:59
如果你能提供一些例子数据,我可以帮助一个更准确的答案,但现在,我希望下面将分享一些想法。
请考虑下面的方法,我假设您的“打开”指的是跟踪用户是否启动了营销活动。
select orders.*,campaigns.campaign_name
from orders_table as orders
left join
(
select distinct timestamp as open_date,campaign_name from campaign_data
) as campaigns
on orders.user_id = campaigns.user_id and campaigns.open_date < orders.order_date and campaigns.open_date >= date_sub(orders.order_date,interval 7 day)此示例基于类似于我过去为工作创建的内容,它查看order表中的每个订单日期,然后在该日期之前打开哪些活动。
你也可以考虑使用像row_number或dense_rank这样的窗口语句,如果你只想退出第一次或者最后一次被打开的活动来回答诸如“用户在下订单之前最后一次互动的谷歌广告是什么”的话。
希望这能帮上忙汤姆
https://stackoverflow.com/questions/71786302
复制相似问题