小编Mat*_*son的帖子

WFS GetFeature具有多个图层和不同的propertyNames

假设我有一个Geoserver,运行WFS暴露的两层(带属性):

StreetLayer (geom, StreetName, Lanes, Length)
HouseLayer (geom, Address)
Run Code Online (Sandbox Code Playgroud)

现在,如果我想查询所有街道的StreetLayer但只获取StreetName和Lanes属性,我会向此发送一个GET请求:

http://geoserver/wfs?REQUEST=GetFeature&VERSION=1.1.0&typename=StreetLayer&propertyname=StreetName,Lanes
Run Code Online (Sandbox Code Playgroud)

但是如果我现在想要查询HouseLayer和StreetLayer呢?这不起作用:

http://geoserver/wfs?REQUEST=GetFeature&VERSION=1.1.0&typename=StreetLayer,HouseLayer&propertyname=StreetName,Lanes,Address
Run Code Online (Sandbox Code Playgroud)

我得到一个例外,说StreetName和Lanes不在HouseLayer中,反之亦然.我需要提出多个请求吗?

编辑:

所以我想做的是这样的:

http://geoserver/wfs?REQUEST=GetFeature&VERSION=1.1.0&typename=StreetLayer,HouseLayer&propertyname=(StreetName,Lanes),(Address)
Run Code Online (Sandbox Code Playgroud)

maps geoserver

7
推荐指数
1
解决办法
5123
查看次数

聚合函数,用于选择与另一个成功聚合函数对应的列的值匹配

对不好的主题感到抱歉.我想不出更好的一个,我赶时间.

说我有以下表格:

  • ID
  • 名称
  • ...

儿童

  • ID
  • 的ParentId
  • 年龄
  • ...

父母和孩子之间存在一对多的关系.

现在我想构建一个返回所有父母及其最小孩子的查询.我希望结果是这样的:

结果

  • Parent.Id
  • Child.Id
  • Child.Age

每个Parent.Id在结果中也应该只有一行.

这是一个解释我想要的图像

http://i.stack.imgur.com/L6PjL.png

这就是我现在所处的位置:

SELECT   
Parent.Id AS ParentId,
Child.Id AS ChildId, 
MIN(Child.Age) AS ChildAge -- OVER (PARTITION BY Parent.Id) AS ChildAge
FROM Parent JOIN Child ON Parent.Id = Child.ParentId
GROUP BY Parent.Id, Child.Id
Run Code Online (Sandbox Code Playgroud)

我想要的是一个聚合函数来放置Child.Id,它将获取对应于MIN(Child.Age)行的Child.Id.我找不到任何这样的东西,我似乎无法模仿这种行为.

任何帮助深表感谢!

sql sql-server

6
推荐指数
1
解决办法
2519
查看次数

标签 统计

geoserver ×1

maps ×1

sql ×1

sql-server ×1