lancom query

This commit is contained in:
Wolfgang Hottgenroth 2017-12-05 13:57:22 +01:00
parent 8b4bf47e4c
commit 45bf0ddc93
2 changed files with 40 additions and 0 deletions

View File

@ -0,0 +1,25 @@
select
UNIX_TIMESTAMP(g1.ts) as time_sec,
g1.description as metric,
non_negative_value(
((g1.value - (select g2.value from grafana_v g2 where g2.ts < g1.ts and g2.description = metric order by ts desc limit 1)) / (UNIX_TIMESTAMP(g1.ts) - UNIX_TIMESTAMP((select g3.ts from grafana_v g3 where g3.ts < g1.ts and g3.description = metric order by ts desc limit 1)))),
((4294967296 + g1.value - (select g2.value from grafana_v g2 where g2.ts < g1.ts and g2.description = metric order by ts desc limit 1)) / (UNIX_TIMESTAMP(g1.ts) - UNIX_TIMESTAMP((select g3.ts from grafana_v g3 where g3.ts < g1.ts and g3.description = metric order by ts desc limit 1))))
) as value
from grafana_v g1
where g1.description = 'VDSL In-gateway'
order by g1.ts asc;
delimiter //
create or replace function non_negative_value(a double, b double) returns double
begin
if (a >= 0) then
return a;
else
return b;
end if;
end//
delimiter ;
grant execute on function statsdb.non_negative_value to 'grafana'@'%';

View File

@ -11,3 +11,18 @@ create or replace view grafana_v as
di.id = ddi.dataitem and
da.devicedataitem = ddi.id;
create or replace view grafana_plain_v as
select concat(di.description, '-', de.description) as description,
da.ts as ts,
da.value as value,
de.description as device
from device_t de,
dataitem_t di,
devicedataitem_t ddi,
collecteddata_t da
where de.id = ddi.device and
di.id = ddi.dataitem and
da.devicedataitem = ddi.id;