我想通过使用纬度/经度数据(通过Azure IoTHub发送)和目标纬度/经度或多边形数据(来自参考输入)来使用Stream Analytics地理空间功能。
我知道我们可以在查询中连接流和引用输入,但是有可能实现一种解决方案,因为我们没有任何数据可以在流和引用输入之间进行连接,并且仍然可以计算使用ST_DISTANCE
的点之间的距离?
样本参考输入数据:
"points":[
{
"point": {
"type" : "Point",
"coordinates" : [0.0, 10.0] }
},
{
"point": {
"type" : "Point",
"coordinates" : [0.0, 0.0] }
},
{
"point": {
"type" : "Point",
"coordinates" : [0.0, -5.0] }
}]
上面的数据将有更多的分数,因此在查询中手动输入分数将不是一个好的解决方案。
我希望输出包含比较的点及其距离。
答案 0 :(得分:1)
在使用SQL查询后,我发现CROSS JOIN
实际上在Stream Analytics中可用,但在文档中却没有。所以使用类似的东西:
SELECT ST_DISTANCE(CreatePoint(input.Lat, input.Lon), CreatePoint(ref.Lat, ref.Lon))
INTO output FROM inputStream input
CROSS JOIN reference ref
有效。