SPARQL では、以下の構文を使用して列ごとに行をグループ化できます。
GROUP BY ?colName
複数の列でグループ化できますか? 例:
GROUP BY (?colName1 + ?colName2 + ?colName3)
次のようなクエリがあるとします。
Select ?a ?b ?c (MIN(?y) AS ?d)
Where {
....
}
GROUP BY (?a + ?b + ?c)
しかし、このクエリは機能しません。
GROUP BY
間にスペースを入れてリストすることにより、(列ではなく)複数の変数を作成できます。
GROUP BY ?a ?b ?c
Ben Companjenの答えに加えて
GROUP BY ?a ?b ?c
明示的に言わないと不確定な非グループ キーを渡すことができないため、SELECT 行を修正する必要があります。
SELECT (sample(?a) as ?A) (sample(?b) as ?B) (sample(?c) as ?C) (min(?y) as ?d)
次のようなことを試しましたか
SELECT ?a+b+?c, (MIN(?y) AS ?d) where { .... } GROUP BY (?a+?b+?c)
これはSQL Serverでうまく機能します