move queries

This commit is contained in:
Brian Cao 2022-07-12 14:14:36 -07:00
parent 910f165103
commit 8aec6d7406
53 changed files with 920 additions and 485 deletions

View file

@ -0,0 +1,29 @@
import { parseFilters, rawQuery, getDateQuery, getTimestampInterval } from 'queries';
export function getWebsiteStats(website_id, start_at, end_at, filters = {}) {
const params = [website_id, start_at, end_at];
const { pageviewQuery, sessionQuery, joinSession } = parseFilters('pageview', filters, params);
return rawQuery(
`
select sum(t.c) as "pageviews",
count(distinct t.session_id) as "uniques",
sum(case when t.c = 1 then 1 else 0 end) as "bounces",
sum(t.time) as "totaltime"
from (
select pageview.session_id,
${getDateQuery('pageview.created_at', 'hour')},
count(*) c,
${getTimestampInterval('pageview.created_at')} as "time"
from pageview
${joinSession}
where pageview.website_id=$1
and pageview.created_at between $2 and $3
${pageviewQuery}
${sessionQuery}
group by 1, 2
) t
`,
params,
);
}