且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

《语义网基础教程(原书第3版)》—— 3.5 组织结果集

更新时间:2022-01-01 03:00:54

本节书摘来自华章出版社《语义网基础教程(原书第3版)》一 书中的第3章,第3.5节,作者:(希)Grigoris Antoniou(荷)Paul Groth(荷)Frank van Harmelen(荷)Rinke Hoekstra ,更多章节内容可以访问云栖社区“华章计算机”公众号查看。

3.5 组织结果集

一种常见的情况是,我们想要查询结果以一种特定的方式返回:分组的、计数的或排序的。SPARQL支持一些函数来帮助我们组织结果集。我们已经知道了如何使用LIMIT关键词来限制结果的数量。我们也可以使用DISTINCT关键词,把它放在选择关键词之后(例如SELECT DISTINCT ?name WHERE),来消除结果集中的重复结果。这将确保返回互不相同的变量绑定。
SPARQL也允许使用ORDER BY关键词来对返回的结果集排序。例如,我们可以要求公寓按卧室数量排序。
《语义网基础教程(原书第3版)》—— 3.5 组织结果集

其返回的是:
《语义网基础教程(原书第3版)》—— 3.5 组织结果集

DESC关键词指明了按降序排列。类似地,ASC指的是升序。此外,注意字符串或URL的排序是根据字典序。
我们也可以使用聚集(aggregate)函数来汇总结果集。特别地,我们可以计数结果的数量(COUNT)、求和(SUM)以及计算最小值、最大值和平均值(MIN、MAX、AVG)。这是一个计算我们的数据集中平均卧室数量的例子。
《语义网基础教程(原书第3版)》—— 3.5 组织结果集

这个聚集函数与AS关键词组合使用,来指明结果集中的变量。并没有限制我们在整个结果集上运用这些聚集。我们也可以使用GROUP BY关键词来聚集特定的分组。
因此,SPARQL为以最适合具体应用的方式组织结果提供了有力机制。