是否可以根据URL在arcgis层中编写动态SQL查询?

时间:2019-12-10 13:59:07

标签: arcgis

我有一个arcgis图层,例如https://baseURL/myMapServer/0 我想根据输入参数为此层定义一个查询。 例如:

select * from my_table where category = ::category

并将类别作为URL参数传递,例如:

https://baseURL/myMapServer/0?category=cat1

我该怎么做?

注意:

我尝试过:

https://baseURL/myMapServer/0/query=category=cat1

并将我的查询定义为:

select * from my_table where category = ::category

但是arcgis说抱怨:: category的查询语法是错误的。

1 个答案:

答案 0 :(得分:0)

看来您可以发布具有以下定义的查询图层的地图服务器:

select * from my_table

然后,您将通过以下URL使用REST服务过滤类别:

https://baseURL/myMapServer/0/query?category='cat1'

请注意,cat1可能区分大小写。然后,您应该检查数据库中的值是cat1还是CAT1或Cat1。在Oracle中使用地理数据库会发生这种情况。

还要注意,引号('cat1')很重要。您应该对它们进行urlencode。另外,请使用问号将参数传递给“查询”方法。