SPARQL/WITH
< SPARQL
Supongamos que queremos encontrar la película donde se haya utilizado la mayor cantidad de idiomas (por ejemplo, en Avatar, los lenguajes utilizados fueron inglés y Na'vi). Podemos encontrar esa información usando
como es mostrado abajo
WITH
SELECT ?item ?count
# Primero, con esta consulta obtenemos las películas y el número de
# lenguas utilizadas en cada una de ellas
WITH {
SELECT ?item (COUNT(?property) AS ?count) {
?item
wdt:P31 wd:Q11424;
wdt:P364 ?property.
}
GROUP BY ?item
} AS %query
# Segundo, obtenemos el número máximo
WITH {
SELECT (MAX(?count) AS ?max) {
INCLUDE %query.
}
} AS %max
# Finalmente, incluimos los dos resultados y solo mostramos aquellas
# películas cuya cantidad de lenguas es el máximo número
WHERE {
INCLUDE %query.
INCLUDE %max.
FILTER(?count = ?max)
}