Je suis en train d'obtenir la liste de tous les auteurs qui ont eu 3 ou plus morceau de travail (en DBpedia).J'essaie d'obtenir la liste de tous les auteurs qui ont eu plus de 3 pièce de travail - DBpedia SPARQL
mon exemple peut être exécuté sur: http://dbpedia.org/sparql
code de base
select (count(?work) as ?totalWork), ?author
Where
{
?work dbo:author ?author.
}
GROUP BY ?author
Je reçois chaque auteurs montant total de pièce de travail. Mais quand j'essaye de filtrer pour montrer seulement la liste d'auteur qui a plus de 3 morceau de travail. Je reçois l'erreur:
j'ai essayé PRESENTANT mot-clé ou par mot-clé FILTRE.
Utiliser le filtre
select (count(?work) as ?tw), ?author
Where
{
?work dbo:author ?author.
FILTER (?work > 3).
}
GROUP BY ?author
error: Virtuoso 22023 Error VECDT: SR066: Unsupported case in CONVERT (INTEGER -> IRI_ID)
utilisant le mot clé AYANT
select (count(?work) as ?tw), ?author
Where
{
?work dbo:author ?author.
}
GROUP BY ?author
HAVING (?tw > 3)
Virtuoso 37000 Error SP031: SPARQL compiler: Variable ?tw is used in the result set outside aggregate and not mentioned in GROUP BY clause
@TallTed Merci de la référence, je ne savais pas. Malheureusement, cela ne génère pas d'erreur sur http://sparql.org/query-validator.html. Je vais parler aux mainteneurs là-bas. – AKSW