CBS Open Data API按ID降序排序无效,如何获取最新10条记录?
问题分析与解决办法
为什么按ID降序排序无效?
核心原因是这个数据集的ID字段和记录的新旧没有直接关联——它可能只是数据库内部的自增标识,但并不代表最新的记录对应最大的ID;甚至该API的ID字段本身不支持排序操作,或者返回的ID值完全和时间顺序脱节。
正确获取最新10条记录的操作步骤
- 确认数据集的时间相关字段
访问该数据集的元数据地址(https://opendata.cbs.nl/ODataApi/OData/83131NED/$metadata),查看TypedDataSet实体的属性列表,找到代表时间/时间段的字段。比如这个83131NED是荷兰就业统计类数据集,其中的Perioden字段就是时间段标识,且是按时间递增生成的。 - 按时间字段降序排序
用找到的时间字段替换ID,结合$top=10参数做降序排序。针对这个数据集,正确的API调用示例为:https://opendata.cbs.nl/ODataApi/OData/83131NED/TypedDataSet?$top=10&$orderby=Perioden desc - 验证结果
调用后检查返回记录的Perioden字段,确认是从最新的时间段开始排列的,即可拿到目标的最新10条记录。
内容的提问来源于stack exchange,提问作者Ricky
相关产品推荐
相关产品推荐

