學習Google FusionTables,所以可能會犯一個初學者的錯誤。當通過ChartTools API查詢Google Fusion Tables但不通過Ajax API時,我會得到正確的結果。奇怪的是,它爲查詢的一部分提供了正確的結果,而不是全部。我犯了一個錯誤嗎?通過Ajax的Google Fusion Table的部分結果不正確,但通過圖表工具正確嗎?
圖表工具API工作原理: 通過Chart Tools API查詢Google FusionTable似乎工作正常,儘管有500行限制。例如,這個查詢:SELECT ETHUN, COUNT() FROM 1Nynh5pPrj1q8JqbalppAm-qzAsgKvL0ZRala7VI GROUP BY ETHUN
使用谷歌圖表工具API,網址是http://www.google.com/fusiontables/gvizdata?tq=SELECT%20ETHUN%2C%20COUNT()%20%20FROM%201Nynh5pPrj1q8JqbalppAm-qzAsgKvL0ZRala7VI%20GROUP%20BY%20ETHUN&tqx=reqId%3A0,它返回一個JSON功能:
google.visualization.Query.setResponse({
version:'0.5',
reqId:'0',status:'ok',
table:{
p:{totalrows:3},
cols:[
{id:'col6',label:'ETHUN',type:'number'},
{id:'#agg#COUNT',label:'count()',type:'number'}
],
rows:[
{c:[{v:1.0},{v:3308.0}]}
{c:[{v:2.0},{v:18702.0}]},
{c:[{v:-9.0},{v:10768.0}]},
]
}
})
特別要注意的值{1,2} -9作爲ETHUN的值。
新FusionTables API不工作: 在另一方面,通過Ajax的API返回正確的頻率,但爲NaN的值本身的頻率描述了製造相同的查詢: https://www.googleapis.com/fusiontables/v1/query?sql=SELECT%20ETHUN%2C%20COUNT()%20%20FROM%201Nynh5pPrj1q8JqbalppAm-qzAsgKvL0ZRala7VI%20GROUP%20BY%20ETHUN&key=AIzaSyBT_ZCriV-Tm78KsJiQp6KKhjDwMhP0tYM
它返回該JSON :
{
"kind": "fusiontables#sqlresponse",
"columns": [ "ETHUN", "count()" ],
"rows": [
[ NaN, "3308" ]
[ NaN, "18702" ],
[ NaN, "10768" ],
]
}
爲什麼它會給我NaN而不是{1,2,-9}?
更新: 我現在認爲這個問題是獨特的新的Fusion Tables SQL,稍微編輯的問題。
(這裏的鏈接到example Fusion Table)
Fusion Tables的SQL API(廢棄)也適用
奇怪的是這個環節也能正常工作,https://www.google.com/fusiontables/api/query?sql=SELECT%20ETHUN,%20COUNT%28%29%20FROM%204579147%20GROUP%20BY%20ETHUN&alt=json-in-script&jsonCallback=onResponse並返回以下JSONP響應又一格式:
onResponse({"table":{"cols":["ETHUN","count()"],"rows":[["2",18702],["-9",10768],["1",3308]]}})
的谷歌Fusion Table API v1.0現在似乎正常工作。偉大的工作谷歌團隊工作在朦朧的問題列表下這麼遠! – prototype 2012-09-11 02:09:34