0

与另一个问题(参见:CONSTRUCT/WHERE 中的 SPARQL 函数)相关,其中答案导致内部有一个带有聚合 SELECT 的 SPARQL CONSTRUCT 查询,我现在想知道如何在这个构造中使用 BIND。

我当前的查询如下所示(简化):

PREFIXES
CONSTRUCT { ?s rdfs:label ?var . }
WHERE {
    SELECT ?s (AVG(?single) as ?agg) ...
        WHERE {
        ...
        }
    GROUP BY ?s ...
}

问题是:在哪里放置用于将值绑定到变量的 BIND 语句,然后在 CONSTRUCT 语句中使用这些语句(例如?var)?

我尝试按照以下消息中所示的方式进行操作:http: //mail-archives.apache.org/mod_mbox/jena-users/201111.mbox/%3C4ED66723.7030506@googlemail.com%3E。但不同的是,这个例子中没有嵌套的 SELECT。

4

1 回答 1

2

这个查询组合似乎对我有用:

PREFIX
CONSTRUCT { ... }
WHERE {
    BIND () {
        SELECT ...
            WHERE {
            ...
            }
        GROUP BY ...
    } 
}
于 2015-11-24T10:34:28.530 回答