Select 根据两个不同命中率数据Bigquery中的值选择VISITID
我的桌子上有一个FULLVISITORID,有两个不同的visitid 每个visitid都有多个点击。我想选择点击的visitid.page.pagepath='somepage' 另一个hits.eventInfo.eventCategory='some event'。这两种情况都应该发生在同一个visitid上 例如: 从my_表中选择*其中FullVisitorid='1'Select 根据两个不同命中率数据Bigquery中的值选择VISITID,select,google-bigquery,Select,Google Bigquery,我的桌子上有一个FULLVISITORID,有两个不同的visitid 每个visitid都有多个点击。我想选择点击的visitid.page.pagepath='somepage' 另一个hits.eventInfo.eventCategory='some event'。这两种情况都应该发生在同一个visitid上 例如: 从my_表中选择*其中FullVisitorid='1' FullVisitorid Visitid ........... hits.page.pagepath
FullVisitorid Visitid ........... hits.page.pagepath .....hits.event.eventCategory
1 123 A abc
B cde
c efg
1 147 somePage ggg
D fff
E SomeEvent
我希望结果是VistiID=147,因为visitid既有pagepath='somepage'又有eventcategory='someevent'
谢谢你的帮助 使用CTE,您可以使用简单的连接逻辑来获得结果
with unnested as (
-- Get the fields you care about
select FullVisitorid, Visitid, h.page.pagepath, h.event.eventCategory
from `dataset.table`
left join unnest(hits) h
),
somepage as (
-- Get somepage hit Visitids
select FullVisitorid, Visitid
from unnested
where pagepath = 'somepage'
group by 1,2
),
someevent as (
-- Get someevent hit Visitids
select FulVisitorid, Visitid
from unnested
where eventCategory = 'someevent'
group by 1,2
),
joined as (
-- Join the CTEs to get common Visitids
select FulVisitorid, Visitid
from somepage
inner join someevent using(FullVisitorid, Visitid)
)
select * from joined
使用CTE,您可以使用简单的连接逻辑来获得结果
with unnested as (
-- Get the fields you care about
select FullVisitorid, Visitid, h.page.pagepath, h.event.eventCategory
from `dataset.table`
left join unnest(hits) h
),
somepage as (
-- Get somepage hit Visitids
select FullVisitorid, Visitid
from unnested
where pagepath = 'somepage'
group by 1,2
),
someevent as (
-- Get someevent hit Visitids
select FulVisitorid, Visitid
from unnested
where eventCategory = 'someevent'
group by 1,2
),
joined as (
-- Join the CTEs to get common Visitids
select FulVisitorid, Visitid
from somepage
inner join someevent using(FullVisitorid, Visitid)
)
select * from joined
谢谢你的帮助!但我在某个页面上收到错误“无法识别的名称:Pagepath”。请尝试小写
Pagepath
。我试图保持与您的示例相同的大小写。谈到大小写,我在您的标准中使用了小写的somepage
和someevent
,尽管您的示例数据有somepage
和someevent
。请相应调整谢谢您的帮助!但我在某个页面上收到错误“无法识别的名称:Pagepath”。请尝试小写Pagepath
。我试图保持与您的示例相同的大小写。谈到大小写,我在您的标准中使用了小写的somepage
和someevent
,尽管您的示例数据有somepage
和someevent
。请作相应调整