sql - Hits per day in Google Big Query -
i using google big query find hits per day. here query,
select count(*) key,         date(eventdateutc) value     [mydataset.mytable]     .....  group value  order value desc  limit 1000; this working fine ignores date 0 hits. wanna include this. cannot create temp table in google big query. how fix this.
tested getting error  field 'day' not found.
select count(*) key,         date(t.day) value  (        select date(date_add(day, i, "day")) day  (select '2015-05-01 00:00' day)  cross join (select     position(      split(        rpad('', datediff(current_timestamp(),'2015-05-01 00:00')*2, 'a,')))   (select null)) b         ) d left join [sample_data.requests] t on d.day = t.day group value  order value desc  limit 1000; 
you can query data exists in tables, query cannot guess dates missing table. problem need handle either in programming language, or join numbers table , generates dates on fly.
if know date range have in query, can generate days:
select date(date_add(day, i, "day")) day  (select '2015-01-01' day)  cross join (select     position(      split(        rpad('', datediff('2015-01-15','2015-01-01')*2, 'a,')))   (select null)) b; then can join result query table:
select count(*) key,         date(t.day) value  (...the.above.query.pasted.here...) d left join [mydataset.mytable] t on d.day = t.day    .....  group value  order value desc  limit 1000; 
Comments
Post a Comment