I have deployed the following example in my tenant:
create context HourlyAvgMeasurementDeviceContext partition measurement.source.value from MeasurementCreated;
@Name("Creating_hourly_measurement")
context HourlyAvgMeasurementDeviceContext
insert into CreateMeasurement
select
m.measurement.source as source,
current_timestamp().toDate() as time,
"c8y_AverageTemperatureMeasurement" as type,
{
"c8y_AverageTemperatureMeasurement.T.value", avg(cast(getNumber(m, "c8y_TemperatureMeasurement.T.value"), double)),
"c8y_AverageTemperatureMeasurement.T.unit", getString(m, "c8y_TemperatureMeasurement.T.unit")
} as fragments
from MeasurementCreated.win:time(1 hours) m
where getObject(m, "c8y_TemperatureMeasurement") is not null
output last every 1 hours;
Afterwards i want to get the average Temperature values(ideally with unit) over the hour as follows:
Select event.c8y_AverageTemperatureMeasurement.T.value from CreateMeasurement event;
but i get an error while deploying the query as:
Error starting statement: Failed to validate select-clause expression 'event.c8y_AverageTemperatureMeasure...(47 chars)': Failed to resolve property 'event.c8y_AverageTemperatureMeasurement.T.value' to a stream or nested property in a stream [Select event.c8y_AverageTemperatureMeasurement.T.value from CreateMeasurement event
Can you please assist with this?