virtuoso tutorial query online examples example español count sparql

count - query - sparql tutorial español



Consulta SPARQL y recuento distinto (2)

Tengo la siguiente consulta:

SELECT ?tag WHERE { ?r ns9:taggedWithTag ?tagresource. ?tagresource ns9:name ?tag } LIMIT 5000

y los resultados son:

abc abc abc abc abc abc abc abd ads anb

Quiero obtener algo así como:

tag | count ----------------- abc 7 abd 1 ads 1 anb 1

Lo he intentado con count(*) y count(?tag) , pero obtengo el mensaje de error "Variable or "*" expected." ¿Puede alguien decirme cómo hacerlo bien?


El uso de COUNT (), MIN (), MAX (), SUM (), AVG () con GROUP BY puede producir valores de resumen para grupos de triples. Tenga en cuenta que estos patrones pueden ser específicos de SPARQL 1.1.

Por ejemplo, este puede sumar el valor? Para cada categoría?

SELECT ?category (SUM(?value) as ?valueSum) WHERE { ?s ?category ?value . } GROUP BY ?category

¿Este puede contar la cantidad de usos para el predicado? P,

SELECT ?p (COUNT(?p) as ?pCount) WHERE { ?s ?p ?o . } GROUP BY ?p

Estos ejemplos están inspirados en material de Bob DuCharme (2011), "Learning SPARQL". O''Reilly Media, Sebastopol, CA, EE. UU .; ver http://www.learningsparql.com/