SPARQL에서 대부분의 학부생과 함께 각 주에서 주와 대학을 찾길 원합니다. 내 예상 출력을 반환하지 않습니다, 그러나SPARQL에서 최대 값을 반환하는 쿼리를 작성하려면 어떻게해야합니까?
PREFIX rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>
PREFIX rdfs: <http://www.w3.org/2000/01/rdf-schema#>
PREFIX dbpr: <http://dbpedia.org/resource/>
PREFIX dbpo: <http://dbpedia.org/ontology/>
PREFIX dbpprop: <http://dbpedia.org/property/>
PREFIX dbpedia: <http://dbpedia.org/resource/>
SELECT ?University ?State (MAX(?nu) AS ?size)
WHERE{
?University dbpo:numberOfUndergraduateStudents ?nu.
?University a dbpo:University.
?University dbpo:state ?State.
{
SELECT ?State
WHERE{
?State a dbpo:PopulatedPlace.
?State a dbpo:AdministrativeRegion.
?State dbpo:country dbpedia:United_States.
?State dbpo:capital ?Capital.
FILTER(bound(?Capital))
}
}
}
:
나는이 시도. 한 주에서 한 개 이상의 학교를 돌려줍니다. 아무도 나를 안내 할 수 있습니까?
답변 해 주셔서 감사합니다. 나는 네가 언급 한 것을했으나 여전히 나는 주에서 여러 번 대학을 얻고있다. 이는 각 주마다 최대 크기의 대학을 반환하지 않음을 의미합니다. 문제의 위치를 알고 계십니까? – Sina
[SPARQL 1.1 spec, §11.2] (http://www.w3.org/TR/sparql11-query/#groupby)에는 다음과 같은 내용이 포함되어 있습니다. "집계가 SELECT, HAVING 또는 ORDER BY의 쿼리 수준에서 사용되지만 GROUP 용어를 사용하지 않으면 모든 솔루션이 속한 단일 암시 적 그룹이됩니다. " 따라서 주어진 질의가 원래의 질문에 답하지는 않지만 합법적 인 것처럼 보입니다. (왜 DBpedia가 하나 이상의 응답을 리턴하는지, 나는 이해하지 못한다.) –