sql server - SQL and Google Charts - Given a series of dates, scale date range -
i'm using google charts create graphs , it's working well. problem i'm having when have large date range. x axis displays series of dates. it's fine 1 , 2 weeks (only weekdays, either have 5 or 10 dates) when start month(s) range, dates overlap 1 , it's unreadable. ideally, on 2 weeks, i'd 10 significant dates. example, if series dates 6/1 - 7/15, i'd x axis on graph display like:
6/1 | 6/5 | 6/10 | 6/15 | 6/20 | 6/25 | 6/30 | 7/5 | 7/10 | 7/15
with google charts, have specify series of data, can't provide start , end date , have scale appropriately. fyi - i'm using sql server stored proc obtain data i'd able calculate dates on database side.
ok understand requirement , here piece of code form string separated ";" can return sql server sp!
begin declare @dt1 smalldatetime declare @dt2 smalldatetime declare @intdays int declare @curdt smalldatetime declare @interv int declare @outtext varchar(1000) set @dt1 = '6/1/2011' set @dt2 = '7/15/2011' set @interv = 10 set @intdays = datediff(dd,@dt1,@dt2) / @interv set @curdt = @dt1 set @outtext = '' while (@curdt < @dt2) begin set @outtext = @outtext + convert(varchar(8), @curdt, 1) + ';' set @curdt = dateadd(dd, @interv, @curdt) end if @curdt >= @dt2 set @outtext = @outtext + convert(varchar(8), @dt2, 1) + ';' set @outtext = substring(@outtext, 1, len(@outtext)-1) print @outtext end @dt1 , @dt2 start , end dates, can replace local variables. @outtext string values.
let me know if have questions or want function/procedure!
Comments
Post a Comment