Skip to content

Commit cd6a28e

Browse files
committed
improve revenue joins and event_data joins to website_event
1 parent 2bd0734 commit cd6a28e

File tree

6 files changed

+65
-33
lines changed

6 files changed

+65
-33
lines changed

src/queries/sql/events/getEventDataEvents.ts

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -93,11 +93,15 @@ async function clickhouseQuery(
9393
string_value as propertyValue,
9494
count(*) as total
9595
from event_data
96-
join website_event
96+
any left join (
97+
select *
98+
from website_event
99+
where website_id = {websiteId:UUID}
100+
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
101+
and event_type = 2) website_event
97102
on website_event.event_id = event_data.event_id
103+
and website_event.session_id = event_data.session_id
98104
and website_event.website_id = event_data.website_id
99-
and website_event.website_id = {websiteId:UUID}
100-
and website_event.created_at between {startDate:DateTime64} and {endDate:DateTime64}
101105
${cohortQuery}
102106
where event_data.website_id = {websiteId:UUID}
103107
and event_data.created_at between {startDate:DateTime64} and {endDate:DateTime64}
@@ -120,11 +124,15 @@ async function clickhouseQuery(
120124
data_type as dataType,
121125
count(*) as total
122126
from event_data
123-
join website_event
127+
any left join (
128+
select *
129+
from website_event
130+
where website_id = {websiteId:UUID}
131+
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
132+
and event_type = 2) website_event
124133
on website_event.event_id = event_data.event_id
134+
and website_event.session_id = event_data.session_id
125135
and website_event.website_id = event_data.website_id
126-
and website_event.website_id = {websiteId:UUID}
127-
and website_event.created_at between {startDate:DateTime64} and {endDate:DateTime64}
128136
${cohortQuery}
129137
where event_data.website_id = {websiteId:UUID}
130138
and event_data.created_at between {startDate:DateTime64} and {endDate:DateTime64}

src/queries/sql/events/getEventDataFields.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,11 +65,15 @@ async function clickhouseQuery(
6565
string_value) as "value",
6666
count(*) as "total"
6767
from event_data
68-
join website_event
68+
any left join (
69+
select *
70+
from website_event
71+
where website_id = {websiteId:UUID}
72+
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
73+
and event_type = 2) website_event
6974
on website_event.event_id = event_data.event_id
75+
and website_event.session_id = event_data.session_id
7076
and website_event.website_id = event_data.website_id
71-
and website_event.website_id = {websiteId:UUID}
72-
and website_event.created_at between {startDate:DateTime64} and {endDate:DateTime64}
7377
${cohortQuery}
7478
where event_data.website_id = {websiteId:UUID}
7579
and event_data.created_at between {startDate:DateTime64} and {endDate:DateTime64}

src/queries/sql/events/getEventDataProperties.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -69,11 +69,15 @@ async function clickhouseQuery(
6969
data_key as propertyName,
7070
count(*) as total
7171
from event_data
72-
join website_event
72+
any left join (
73+
select *
74+
from website_event
75+
where website_id = {websiteId:UUID}
76+
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
77+
and event_type = 2) website_event
7378
on website_event.event_id = event_data.event_id
79+
and website_event.session_id = event_data.session_id
7480
and website_event.website_id = event_data.website_id
75-
and website_event.website_id = {websiteId:UUID}
76-
and website_event.created_at between {startDate:DateTime64} and {endDate:DateTime64}
7781
${cohortQuery}
7882
where event_data.website_id = {websiteId:UUID}
7983
and event_data.created_at between {startDate:DateTime64} and {endDate:DateTime64}

src/queries/sql/events/getEventDataStats.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,11 +72,15 @@ async function clickhouseQuery(
7272
data_key,
7373
count(*) as "total"
7474
from event_data
75-
join website_event
75+
any left join (
76+
select *
77+
from website_event
78+
where website_id = {websiteId:UUID}
79+
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
80+
and event_type = 2) website_event
7681
on website_event.event_id = event_data.event_id
82+
and website_event.session_id = event_data.session_id
7783
and website_event.website_id = event_data.website_id
78-
and website_event.website_id = {websiteId:UUID}
79-
and website_event.created_at between {startDate:DateTime64} and {endDate:DateTime64}
8084
${cohortQuery}
8185
where event_data.website_id = {websiteId:UUID}
8286
and event_data.created_at between {startDate:DateTime64} and {endDate:DateTime64}

src/queries/sql/events/getEventDataValues.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -72,11 +72,15 @@ async function clickhouseQuery(
7272
string_value) as "value",
7373
count(*) as "total"
7474
from event_data
75-
join website_event
75+
any left join (
76+
select *
77+
from website_event
78+
where website_id = {websiteId:UUID}
79+
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
80+
and event_type = 2) website_event
7681
on website_event.event_id = event_data.event_id
82+
and website_event.session_id = event_data.session_id
7783
and website_event.website_id = event_data.website_id
78-
and website_event.website_id = {websiteId:UUID}
79-
and website_event.created_at between {startDate:DateTime64} and {endDate:DateTime64}
8084
${cohortQuery}
8185
where event_data.website_id = {websiteId:UUID}
8286
and event_data.created_at between {startDate:DateTime64} and {endDate:DateTime64}

src/queries/sql/reports/getRevenue.ts

Lines changed: 23 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -43,12 +43,14 @@ async function relationalQuery(
4343

4444
const joinQuery =
4545
filterQuery || cohortQuery
46-
? `join website_event
47-
on website_event.website_id = revenue.website_id
48-
and website_event.session_id = revenue.session_id
49-
and website_event.event_id = revenue.event_id
50-
and website_event.website_id = {{websiteId::uuid}}
51-
and website_event.created_at between {{startDate}} and {{endDate}}`
46+
? `join (select *
47+
from website_event
48+
where website_id = {{websiteId::uuid}}
49+
and created_at between {{startDate}} and {{endDate}}
50+
and event_type = 2) website_event
51+
on website_event.website_id = revenue.website_id
52+
and website_event.session_id = revenue.session_id
53+
and website_event.event_id = revenue.event_id`
5254
: '';
5355

5456
const chart = await rawQuery(
@@ -130,12 +132,15 @@ async function clickhouseQuery(
130132
});
131133

132134
const joinQuery = filterQuery
133-
? `join website_event
134-
on website_event.website_id = website_revenue.website_id
135-
and website_event.session_id = website_revenue.session_id
136-
and website_event.event_id = website_revenue.event_id
137-
and website_event.website_id = {websiteId:UUID}
138-
and website_event.created_at between {startDate:DateTime64} and {endDate:DateTime64}`
135+
? `any left join (
136+
select *
137+
from website_event
138+
where website_id = {websiteId:UUID}
139+
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
140+
and event_type = 2) website_event
141+
on website_event.website_id = website_revenue.website_id
142+
and website_event.session_id = website_revenue.session_id
143+
and website_event.event_id = website_revenue.event_id`
139144
: '';
140145

141146
const chart = await rawQuery<
@@ -174,12 +179,15 @@ async function clickhouseQuery(
174179
website_event.country as name,
175180
sum(website_revenue.revenue) as value
176181
from website_revenue
177-
join website_event
182+
any left join (
183+
select *
184+
from website_event
185+
where website_id = {websiteId:UUID}
186+
and created_at between {startDate:DateTime64} and {endDate:DateTime64}
187+
and event_type = 2) website_event
178188
on website_event.website_id = website_revenue.website_id
179189
and website_event.session_id = website_revenue.session_id
180190
and website_event.event_id = website_revenue.event_id
181-
and website_event.website_id = {websiteId:UUID}
182-
and website_event.created_at between {startDate:DateTime64} and {endDate:DateTime64}
183191
${cohortQuery}
184192
where website_revenue.website_id = {websiteId:UUID}
185193
and website_revenue.created_at between {startDate:DateTime64} and {endDate:DateTime64}

0 commit comments

Comments
 (0)