クエリで 500 行の制限を回避する方法を検索したところ、ほとんど役立つ例がいくつか見つかりました。これが実際の例です。ここでの私のコードは、「オペレーター」のリストを照会し、その選択に基づいて、操作する「ウェル」を動的に返します。それは機能しますが、GViz によって 500 行に制限されているため、JSON を渡す新しい Fusion Tables Api を使用する必要があるため、GViz を使用する必要がなく、すべての行を取得できます。その方法を知りたいです。誰かがこれを移行するのを手伝ってくれますか、それとも500行だけではなくすべての行を返すことができるようにしてくれますか? どうもありがとう!
<!DOCTYPE html>
<!--
copyright (c) 2011 Google inc.
You are free to copy and use this sample.
License can be found here: http://code.google.com/apis/ajaxsearch/faq/#license
-->
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8"/>
<title>northdakotarigsmap.com - Wells Map</title>
<style>
body { font-family: Arial, sans-serif; }
#map_canvas { height: 650px; width:900px; }
</style>
<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
<script type="text/javascript">
google.load('visualization', '1', {});
var myLatLng = null;
var markloc = null;
var cachedFirstOption = ""; // Save the selected option
var tableid = '1X1BA0s3R8fBfPuiuuYUYsWhV_u_6RWVMVoDqsAY'; // table id
var layer = new google.maps.FusionTablesLayer();
// Initialize the map and set the layer
function initialize() {
var map = new google.maps.Map(document.getElementById('map_canvas'), {
center: new google.maps.LatLng(47.724544549099676, -100.43701171875), //the center lat and long
scaleControl: true,
zoom: 7, //zoom
zoomControl: true,
zoomControlOptions: {
style: google.maps.ZoomControlStyle.LARGE,
position: google.maps.ControlPosition.TOP_LEFT},
mapTypeId: google.maps.MapTypeId.ROADMAP //the map style
});
layer.setOptions({
query: {
select: 'geometry',
from: tableid
}
});
layer.setMap(map);
}
// The following function, changeData, runs when the user selects an option from the first
// select menu. This function removes any options from the second menu. If the option
// is All, it resets the query to show all results on the map. Otherwise, it updates
// the data on the map to match the selected option, then sends a gviz query to update the
// second select menu.
function changeData(firstOption) {
// Remove any options from second menu
secondSelect = document.getElementById("wnames");
numChildren = secondSelect.childNodes.length;
for(i = 1; i < numChildren; i++) {
secondSelect.removeChild(secondSelect.childNodes[1]);
}
if(firstOption == "%") {
layer.setOptions({
query: {
select: 'geometry',
from: tableid
}
});
} else {
// Save the option and update the map
cachedFirstOption = firstOption;
updateMap(firstOption, "%");
var queryText = encodeURIComponent("https://www.googleapis.com/fusiontables/v1/query?sql=SELECT 'Well Name', COUNT() FROM " + tableid + " WHERE 'Operator' LIKE '" + firstOption + "' GROUP BY 'Well Name'&key=AIzaSyAkmt7K8ArFRtBpiI6om-d2uSuI9qbiiAY");
// Set the callback function which will update the second menu
query.send(getData);
}
}
//
//
//I can't get the following code to work
//
//
// This function, getData, is called when query results are returned. It adds options
// to the second select menu based on the results of the query.
function getData(response) {
// Get the number of rows
numRows = response.getDataTable().getNumberOfRows();
// Add options to the select menu based on the results
secondSelect = document.getElementById("wnames");
for(i = 0; i < numRows; i++) {
newoption = document.createElement('option');
newoption.setAttribute('value', response.getDataTable().getValue(i, 0));
newoption.innerHTML = response.getDataTable().getValue(i, 0);
secondSelect.appendChild(newoption);
}
}
// Update the data displayed on the map
function updateMap(firstOption, secondOption) {
secondOption = secondOption.replace("'", "\\'");
layer.setOptions({
query: {
select: 'geometry',
from: tableid,
where: "'Operator' LIKE '" + firstOption + "' AND 'Well Name' LIKE '" + secondOption + "'"
}
});
}
//
</script>
</head>
<body onload="initialize();">
<div id="map_canvas"></div>
<div id="select1" style="absolute">
Operator: <select id="delivery" onchange="changeData(this.value);">
<option value="">--Select--</option>
<option value="ABRAXAS PETROLEUM CORP.">ABRAXAS PETROLEUM CORP.</option>
<option value="AMERICAN EAGLE ENERGY CORPORATION">AMERICAN EAGLE ENERGY CORPORATION</option>
<option value="BAYTEX ENERGY USA LTD">BAYTEX ENERGY USA LTD</option>
<option value="BRIGHAM OIL & GAS, L.P.">BRIGHAM OIL & GAS, L.P.</option>
<option value="BURLINGTON RESOURCES OIL & GAS COMPANY">BURLINGTON RESOURCES OIL & GAS COMPANY</option>
<option value="CONTINENTAL RESOURCES, INC.">CONTINENTAL RESOURCES, INC.</option>
<option value="CORINTHIAN EXPLORATION (USA) CORP">CORINTHIAN EXPLORATION (USA) CORP</option>
<option value="CORNERSTONE NATURAL RESOURCES LLC">CORNERSTONE NATURAL RESOURCES LLC</option>
<option value="CRESCENT POINT ENERGY U.S. CORP.">CRESCENT POINT ENERGY U.S. CORP.</option>
<option value="DENBURY ONSHORE, LLC">DENBURY ONSHORE, LLC</option>
<option value="ENDURO OPERATING, LLC">ENDURO OPERATING, LLC</option>
<option value="ENERPLUS RESOURCES USA CORPORATION">ENERPLUS RESOURCES USA CORPORATION</option>
<option value="EOG RESOURCES, INC.">EOG RESOURCES, INC.</option>
<option value="FIDELITY EXPLORATION & PRODUCTION COMPANY">FIDELITY EXPLORATION & PRODUCTION COMPANY</option>
<option value="G3 OPERATING, LLC">G3 OPERATING, LLC</option>
<option value="GMX RESOURCES INC">GMX RESOURCES INC</option>
<option value="HESS CORPORATION">HESS CORPORATION</option>
<option value="HUNT OIL COMPANY">HUNT OIL COMPANY</option>
<option value="KODIAK OIL & GAS (USA) INC.">KODIAK OIL & GAS (USA) INC.</option>
<option value="LIBERTY RESOURCES LLC">LIBERTY RESOURCES LLC</option>
<option value="MARATHON OIL COMPANY">MARATHON OIL COMPANY</option>
<option value="MOUNTAIN VIEW ENERGY INC.">MOUNTAIN VIEW ENERGY INC.</option>
<option value="MUREX PETROLEUM CORPORATION">MUREX PETROLEUM CORPORATION</option>
<option value="NEWFIELD PRODUCTION COMPANY">NEWFIELD PRODUCTION COMPANY</option>
<option value="NORTH PLAINS ENERGY, LLC">NORTH PLAINS ENERGY, LLC</option>
<option value="OASIS PETROLEUM NORTH AMERICA LLC">OASIS PETROLEUM NORTH AMERICA LLC</option>
<option value="OXY USA INC.">OXY USA INC.</option>
<option value="PETRO-HUNT, L.L.C.">PETRO-HUNT, L.L.C.</option>
<option value="QEP ENERGY COMPANY">QEP ENERGY COMPANY</option>
<option value="SAMSON RESOURCES COMPANY">SAMSON RESOURCES COMPANY</option>
<option value="SEQUEL ENERGY, LLC">SEQUEL ENERGY, LLC</option>
<option value="SINCLAIR OIL AND GAS COMPANY">SINCLAIR OIL AND GAS COMPANY</option>
<option value="SLAWSON EXPLORATION COMPANY, INC.">SLAWSON EXPLORATION COMPANY, INC.</option>
<option value="SM ENERGY COMPANY">SM ENERGY COMPANY</option>
<option value="TRIANGLE USA PETROLEUM CORPORATION">TRIANGLE USA PETROLEUM CORPORATION</option>
<option value="TRUE OIL LLC">TRUE OIL LLC</option>
<option value="WATERWORKS EAST FORK, LLC">WATERWORKS EAST FORK, LLC</option>
<option value="WHITING OIL AND GAS CORPORATION">WHITING OIL AND GAS CORPORATION</option>
<option value="WPX ENERGY WILLISTON, LLC">WPX ENERGY WILLISTON, LLC</option>
<option value="XTO ENERGY INC.">XTO ENERGY INC.</option>
<option value="ZAVANNA, LLC">ZAVANNA, LLC</option>
<option value="ZENERGY, INC">ZENERGY, INC</option>
</select>
</div>
<!-- Important: keep the option on the same line as the select tag here because any newlines
will be considered child elements of the select node -->
Well Names: <select id="wnames" onchange="updateMap(cachedFirstOption, this.value)"><option id="secondOption" value="%">--Make selection--</option></select>
</body>
</html>