限制Fusion表中的查询长度

Limit to query length in Fusion Tables?

本文关键字:查询 Fusion 限制      更新时间:2023-09-26

我正试图使用"IN"运算符从Fusion表中获取数据。当我查找一个非常大的字符串(2000+邮政编码)时,不会返回任何内容。当我查看一个短字符串(两个邮政编码)时,它工作正常。

例如,这是有效的:

var zip = "76364,76373";
layer = new google.maps.FusionTablesLayer(tableid);
layer.setQuery("SELECT 'geometry' FROM " + tableid + " WHERE ZIP IN("+zip+")");
layer.setMap(map);

但事实并非如此:

var zips = <?php echo $zips; ?>; //$zips is a JSON array
zips = zips.join();
layer = new google.maps.FusionTablesLayer(tableid);
layer.setQuery("SELECT 'geometry' FROM " + tableid + " WHERE ZIP IN("+zips+")");
layer.setMap(map);

我在Firebug中得到一个400错误。

我一直无法在谷歌文档中找到限制。

听起来你已经达到了URL的最大长度(2048个字符)。

发送到融合表层的查询被添加到每个瓦片图像的URL中。如果查询太长,则每个平铺图像的URL都超过了URL限制,并且该图像将不会显示。