当前,我必须在BigQuery for Google Analytics(分析)中提供以下格式的报告:
客户端ID,会话ID,来源,中等会话号
因此,结果必须是一个表,其中每个 ClientID,SessionNumber 包含按日期排序的事件发生的顺序
问题是在一个会话期间发生转换。因此,特定 ClientID 的 SessionNumber 值不会在发生转换的事件时结束。 [例如,ClientID = 1中有30个事件,而转换发生在第15个事件(从SessionNumber正常发送)]
我的问题是,当发生转换时,如何删除 SessionNumber 中的序号之后的表中的所有数据? 这样就可以查看何时发生了lastclick并查看辅助转换? 如何为特定的数据组应用条件(在这种情况下,对于每个 client ID -请记住,对于每个 ClientID ,我们都有特定数量的事件和相应的序号)
示例:
Client ID | SessionID | Source | Medium | SesionNumber | Goal Achieved (1 if yes)
1 | 456| google | cpc | 1 | 0
1 | 456| google | cpc | 2 | 0
1 | 456| google | cpc | 3 | 1
1 | 456| google | cpc | 4 | 0
2 | 234| ... ... ... ...
... ... ... ... ... ...
因此,当在每个 ClientID 内部进行转换时,我必须摆脱 SessionNumber 之后的所有行(转换是在实现目标之后发生的-我已经创建了这样的代码)。标准SQL是否有任何语法可以为每个ClientID 创建这样的条件?
问题在于,一次会话内部可能会发生转换,并且该用户也可以执行其他操作,但是我只需要从会话开始到发生转换为止的记录
我想返回该表(来自示例):
Client ID | SessionID | Source | Medium | SesionNumber | Goal Achieved (1 if yes)
1 | 456| google | cpc | 1 | 0
1 | 456| google | cpc | 2 | 0
1 | 456| google | cpc | 3 | 1
2 | 234| ... ... ... ...
... ... ... ... ... ...