Socrata、SODA、REST、JS:如何查询行数?
Socrata, SODA, REST, JS: How to query number of rows?
我正在尝试弄清楚如何查询资源以查看在我一次请求整个资源之前它有多少行,或者我是否使用分页来批量取回行。
例如,这里的资源:
https://data.cityofnewyork.us/Transportation/Bicycle-Routes/7vsa-caz7
1) 如果我知道行数,我可以使用 $limit parameter 来确保我找回所有内容。例如,此数据集有大约 17,000 行,因此将 $limit 设置为 20000 即可获取所有行。
例如:
https://data.cityofnewyork.us/resource/cc5c-sm6z.geojson?$limit=20000
还有...
2) 我想也许可以做一个 metadata call,但是虽然这个请求在这里 returns 元数据,行数不是它的一部分:
https://data.cityofnewyork.us/api/views/metadata/v1/cc5c-sm6z
但是,在我决定如何请求它们之前,我想知道数据集中有多少行:使用 $limit 参数一次全部,或者使用 $limit 和 $offset 参数分页。
想法?
一种方法是在 API 调用中使用 COUNT 函数来计算行数。
YMMV上应该注意这个方法。一般来说,最大值在50,000 rows左右才需要切换到分页。一般来说,我总是会抛出 50k 的限制,如果它更大,我会准备好分页。
我正在尝试弄清楚如何查询资源以查看在我一次请求整个资源之前它有多少行,或者我是否使用分页来批量取回行。
例如,这里的资源:
https://data.cityofnewyork.us/Transportation/Bicycle-Routes/7vsa-caz7
1) 如果我知道行数,我可以使用 $limit parameter 来确保我找回所有内容。例如,此数据集有大约 17,000 行,因此将 $limit 设置为 20000 即可获取所有行。
例如:
https://data.cityofnewyork.us/resource/cc5c-sm6z.geojson?$limit=20000
还有...
2) 我想也许可以做一个 metadata call,但是虽然这个请求在这里 returns 元数据,行数不是它的一部分:
https://data.cityofnewyork.us/api/views/metadata/v1/cc5c-sm6z
但是,在我决定如何请求它们之前,我想知道数据集中有多少行:使用 $limit 参数一次全部,或者使用 $limit 和 $offset 参数分页。
想法?
一种方法是在 API 调用中使用 COUNT 函数来计算行数。
YMMV上应该注意这个方法。一般来说,最大值在50,000 rows左右才需要切换到分页。一般来说,我总是会抛出 50k 的限制,如果它更大,我会准备好分页。