「IN」演算子を使用して、Fusion Table からデータを取得しようとしています。非常に大きな文字列 (2000 以上の郵便番号) を検索すると、何も返されません。短い文字列 (2 つの郵便番号) を見ると、正しく動作します。
たとえば、これは機能します:
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 エラーが発生します。
Google ドキュメントで制限を見つけることができませんでした。