Rdf 仅从sparql查询中选择第一个对象
我想从dbpedia获得Daft Punk的唱片集,对于每一张专辑,我想展示: 1) 标题 2) 发行年 3) 维基百科页面, 所以我写了这个查询:Rdf 仅从sparql查询中选择第一个对象,rdf,sparql,Rdf,Sparql,我想从dbpedia获得Daft Punk的唱片集,对于每一张专辑,我想展示: 1) 标题 2) 发行年 3) 维基百科页面, 所以我写了这个查询: PREFIX d: <http://dbpedia.org/ontology/> PREFIX prop: <http://dbpedia.org/property/> PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX : <http://dbpedia.or
PREFIX d: <http://dbpedia.org/ontology/>
PREFIX prop: <http://dbpedia.org/property/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX : <http://dbpedia.org/resource/>
SELECT DISTINCT str(?name) YEAR(?relDate) AS ?relYear ?wiki WHERE {
?album a d:Album .
?album foaf:name ?name .
?album d:artist :Daft_Punk .
?album foaf:isPrimaryTopicOf ?wiki .
?album d:releaseDate ?relDate .
}
ORDER BY ?relDate
前缀d:
前缀道具:
前缀foaf:
前缀:
选择不同的str(?name)YEAR(?relDate)作为?relYear?wiki,其中{
相册a和d:相册。
?专辑foaf:名称?名称。
专辑d:艺术家:傻瓜朋克。
?专辑foaf:iPrimaryTopicof?wiki。
专辑d:发行日期?发行日期。
}
按日期订购
这是可行的,除了有一张专辑(Live2007)有两个不同的发行年份(如你所见),但我只想展示其中最早的一张
两个。我应该如何编辑我的查询以使此相册仅在第一个日期出现一次?感谢您的回答。当使用的功能对结果进行分组后,您可以使用
MIN
提取发布年份的最小值
例如,类似这样的内容:
PREFIX d: <http://dbpedia.org/ontology/>
PREFIX prop: <http://dbpedia.org/property/>
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX : <http://dbpedia.org/resource/>
SELECT str(?name) MIN(YEAR(?relDate)) AS ?relYear ?wiki
WHERE {
?album a d:Album .
?album foaf:name ?name .
?album d:artist :Daft_Punk .
?album foaf:isPrimaryTopicOf ?wiki .
?album d:releaseDate ?relDate .
}
GROUP BY ?name ?wiki
ORDER BY ?relYear
前缀d:
前缀道具:
前缀foaf:
前缀:
选择str(?name)MIN(YEAR(?relDate))作为?relYear?wiki
在哪里{
相册a和d:相册。
?专辑foaf:名称?名称。
专辑d:艺术家:傻瓜朋克。
?专辑foaf:iPrimaryTopicof?wiki。
专辑d:发行日期?发行日期。
}
按名称分组?wiki
按年订购