MCPcopy
hub / github.com/umami-software/umami / relationalQuery

Function relationalQuery

src/queries/sql/getWeeklyTraffic.ts:16–44  ·  view source on GitHub ↗
(websiteId: string, filters: QueryFilters)

Source from the content-addressed store, hash-verified

14}
15
16async function relationalQuery(websiteId: string, filters: QueryFilters) {
17 const { timezone = 'utc' } = filters;
18 const { rawQuery, getDateWeeklySQL, parseFilters } = prisma;
19 const { filterQuery, joinSessionQuery, cohortQuery, excludeBounceQuery, queryParams } =
20 parseFilters({
21 ...filters,
22 websiteId,
23 });
24
25 return rawQuery(
26 `
27 select
28 ${getDateWeeklySQL('website_event.created_at', timezone)} as time,
29 count(distinct website_event.session_id) as value
30 from website_event
31 ${cohortQuery}
32 ${excludeBounceQuery}
33 ${joinSessionQuery}
34 where website_event.website_id = {{websiteId::uuid}}
35 and website_event.created_at between {{startDate}} and {{endDate}}
36 and website_event.event_type NOT IN (2, 5)
37 ${filterQuery}
38 group by time
39 order by 1
40 `,
41 queryParams,
42 FUNCTION_NAME,
43 ).then(formatResults);
44}
45
46async function clickhouseQuery(websiteId: string, filters: QueryFilters) {
47 const { timezone = 'utc' } = filters;

Callers 1

getWeeklyTrafficFunction · 0.70

Calls 3

getDateWeeklySQLFunction · 0.85
parseFiltersFunction · 0.50
rawQueryFunction · 0.50

Tested by

no test coverage detected