【发布时间】:2016-02-11 03:10:11
【问题描述】:
我有这个数据
@prefix : <http://test.example/> .
:alice :likes :beethoven.
:alice :likes :verdi.
:sofia :likes :beethoven.
:sofia :likes :verdi.
:sofia :likes :rossini.
:ania :likes :verdi.
:ania :likes :beethoven.
:ania :likes :david.
:david :likes :ania.
:david :likes :beethoven.
:david :likes :verdi.
:antonino :likes :verdi.
:antonino :likes :mozart.
:weirdo :likes :katyperry.
:beethoven a :recommendable.
:verdi a :recommendable.
:rossini a :recommendable.
:katyperry a :recommendable.
:mozart a :recommendable.
我进行查询以获取与特定用户喜欢相同项目的用户
select ?anotherUser (COUNT(?anotherItem) as ?countOfItems) WHERE {
values ?user {:ania}
?anotherUser :likes ?anotherItem.
filter (?anotherUser != ?user)
filter exists {?user :likes ?anotherItem}
}group by ?anotherUser
order by desc(?countOfItems)
现在我想获取这些用户喜欢的项目(但当然没有他们与特定用户共享的项目 (:ania))
我知道我必须在另一个查询中包含一个查询,我自己尝试了很多但没有成功,你能帮忙吗?
【问题讨论】:
-
您能展示一下您尝试过的方法以及为什么它没有按预期工作吗?
标签: sparql rdf semantic-web owl