本節書摘來自華章出版社《語義網基礎教程(原書第3版)》一 書中的第3章,第3.5節,作者:(希)grigoris antoniou(荷)paul groth(荷)frank van harmelen(荷)rinke hoekstra ,更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。
一種常見的情況是,我們想要查詢結果以一種特定的方式傳回:分組的、計數的或排序的。sparql支援一些函數來幫助我們組織結果集。我們已經知道了如何使用limit關鍵詞來限制結果的數量。我們也可以使用distinct關鍵詞,把它放在選擇關鍵詞之後(例如select distinct ?name where),來消除結果集中的重複結果。這将確定傳回互不相同的變量綁定。
sparql也允許使用order by關鍵詞來對傳回的結果集排序。例如,我們可以要求較高價的電梯大廈按卧室數量排序。

其傳回的是:
desc關鍵詞指明了按降序排列。類似地,asc指的是升序。此外,注意字元串或url的排序是根據字典序。
我們也可以使用聚集(aggregate)函數來彙總結果集。特别地,我們可以計數結果的數量(count)、求和(sum)以及計算最小值、最大值和平均值(min、max、avg)。這是一個計算我們的資料集中平均卧室數量的例子。
這個聚集函數與as關鍵詞組合使用,來指明結果集中的變量。并沒有限制我們在整個結果集上運用這些聚集。我們也可以使用group by關鍵詞來聚集特定的分組。
是以,sparql為以最适合具體應用的方式組織結果提供了有力機制。