FusionTablesLayer where 子句不过滤数据
FusionTablesLayer where clause not filtering data
我最近看了很多关于如何使用 FusionTablesLayer 在 google 地图上显示区域的示例。我已经将融合 table 放在一起并为其创建了一个视图。可以在这里找到 (View of Data)。
但是,下面的代码片段似乎没有根据 where 子句过滤数据。
var provinces = new google.maps.FusionTablesLayer({
map: $scope.map,
query: {
select: "*",
from: "1NpDIypHO58j9k1BAOr1tniCgoOPUkdbKBsXgTVCS",
where: "'PROVINCE' = '02'",
limit: 100
},
suppressInfoWindows: true
});
这实际上仍然获取并显示了所有四个省,并且似乎忽略了 where 子句。
不要对 select 使用“*”,那应该是包含地理信息的列(在您的例子中 geometry
)。
代码片段:
function initialize() {
var map = new google.maps.Map(mapDiv, {
center: new google.maps.LatLng(52.669177995538305, -7.1375505556775405),
zoom: 7,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
layer = new google.maps.FusionTablesLayer({
map: map,
heatmap: {
enabled: false
},
query: {
select: "geometry",
from: "1NpDIypHO58j9k1BAOr1tniCgoOPUkdbKBsXgTVCS",
where: "PROVINCE = '02'"
},
options: {
styleId: 2,
templateId: 2
}
});
}
google.maps.event.addDomListener(window, "load", initialize);
html,
body,
#mapDiv {
height: 100%;
width: 100%;
margin: 0px;
padding: 0px
}
<script src="https://maps.googleapis.com/maps/api/js"></script>
<div id="mapDiv"></div>
我最近看了很多关于如何使用 FusionTablesLayer 在 google 地图上显示区域的示例。我已经将融合 table 放在一起并为其创建了一个视图。可以在这里找到 (View of Data)。
但是,下面的代码片段似乎没有根据 where 子句过滤数据。
var provinces = new google.maps.FusionTablesLayer({
map: $scope.map,
query: {
select: "*",
from: "1NpDIypHO58j9k1BAOr1tniCgoOPUkdbKBsXgTVCS",
where: "'PROVINCE' = '02'",
limit: 100
},
suppressInfoWindows: true
});
这实际上仍然获取并显示了所有四个省,并且似乎忽略了 where 子句。
不要对 select 使用“*”,那应该是包含地理信息的列(在您的例子中 geometry
)。
代码片段:
function initialize() {
var map = new google.maps.Map(mapDiv, {
center: new google.maps.LatLng(52.669177995538305, -7.1375505556775405),
zoom: 7,
mapTypeId: google.maps.MapTypeId.ROADMAP
});
layer = new google.maps.FusionTablesLayer({
map: map,
heatmap: {
enabled: false
},
query: {
select: "geometry",
from: "1NpDIypHO58j9k1BAOr1tniCgoOPUkdbKBsXgTVCS",
where: "PROVINCE = '02'"
},
options: {
styleId: 2,
templateId: 2
}
});
}
google.maps.event.addDomListener(window, "load", initialize);
html,
body,
#mapDiv {
height: 100%;
width: 100%;
margin: 0px;
padding: 0px
}
<script src="https://maps.googleapis.com/maps/api/js"></script>
<div id="mapDiv"></div>