Привет! Я использую SPARQL для запроса LMDB (http://data.linkedmdb.org/snorql/) и пытаюсь также получить количество экземпляров, когда возвращаются некоторые результаты запроса. Я пытался добавить (COUNT(?something) AS ?somethingElse)
, а затем либо GROUP or ORDER BY
к моим запросам, но затем переменная ?somethingElse
заменяет все остальные результаты. Я думаю, что лучшим способом было бы использовать UNION
и получать результаты в отдельной строке, которая не имеет ничего общего с другими, но по какой-то причине я не могу найти правильное решение.
Мой запрос:
PREFIX mov: <http://data.linkedmdb.org/resource/movie/>
SELECT DISTINCT ?Names WHERE
{ ?link mov:actor_name 'guy boyd' .
?movie mov:actor ?link;
mov:actor ?Link_To_Actor_Page.
?Link_To_Actor_Page mov:actor_name ?Names. }
Если вы выполните этот запрос, все будет хорошо, но если вы добавите (COUNT(?Names) AS ?total)
, то будет напечатано только ?total
. Поэтому я думаю, что мои вопросы: как я могу распечатать столько переменных, сколько захочу, и получить COUNT(?something)
в виде отдельного столбца. В основном без COUNT(?)
, заменяющего все остальные ?variable
в запросе.