SPARQL常用查詢

查看查詢結(jié)果戳DBPedia sparql endpoint
PREFIX定義如下:

PREFIX prop: <http://dbpedia.org/property/>
PREFIX ont: <http://dbpedia.org/ontology/>
PREFIX res: <http://dbpedia.org/resource/>

查詢所有謂詞

SELECT DISTINCT ?p
WHERE {
    ?s ?p ?o. #WHERE中只有一句條件的時候.可省略
}

一個類似的需求是查詢所有屬性

SELECT COUNT DISTINCT ?prop 
WHERE {
  ?prop a rdf:Property #a是rdf:type的簡寫
}
ORDER BY ?prop #可選衍锚,只是為了展示ORDER BY的語法

查詢一個類的所有子類

select ?p { #WHERE在sparql中可省略
    ?p rdfs:subClassOf* ont:Person . #加*表示此步操作需要迭代進行坑雅,不僅查找Person的子類還查找子類的子類尊浪;去掉*則只查找Person的子類
}

類似的查詢一個類的所有超類

select ?p {
    ont:Actor rdfs:subClassOf* ?p .
}

類似的語法還可以用于查詢一個屬性的子屬性

select ?p { 
    ?p rdfs:subPropoertyOf* prop:height . 
}

列出一個類的所有屬性

select distinct ?property where { 
   ?property rdfs:domain ont:Actor.
}

子查詢(列出所有有生卒年份記載的聲優(yōu)的相關(guān)事實)

SELECT DISTINCT ?birth ?death ?actor ?p ?o 
WHERE{
  ?actor ?p ?o.
  {
    SELECT DISTINCT ?actor ?birth ?death
    WHERE {
      ?actor rdf:type ont:VoiceActor .
      ?actor prop:birthDate ?birth.
      ?actor prop:deathDate ?death. 
    } 
  }
}

使用FILTER正則匹配

SELECT DISTINCT ?p
WHERE {
  ?p a rdf:Property.
  ?s ?p ?o.
  FILTER (REGEX(str(?p), "date", "i"))  # "i"代表大小寫不敏感儒拂,匹配?p中出現(xiàn)date
}

顯示所有的named graph

SELECT DISTINCT ?g {
GRAPH ?g {}
}

MINUS只顯示一些有用的predicate

select *
{
  {
    term: ?p ?o.
    MINUS {term: owl:sameAs ?o}
    MINUS {term: rdf:type ?o}
    MINUS {term: rdfs:label ?o}
    MINUS {term: rdfs:comment ?o}
    MINUS {term: ont:abstract ?o}
    MINUS {term: dct:subject ?o}
  }
  UNION
  {
    ?s ?p term:
    MINUS {?s ont:wikiPageRedirects term:}
  }
}

聚合語句的寫法(顯示配偶信息大于1條的演員)

SELECT ?s, (COUNT(?s) AS ?cnt)
{
?s a ont:Actor.
?s prop:spouse ?o.
FILTER(isLiteral(?o))
}
GROUP BY ?s
HAVING (COUNT(?s) > 1)

使用VALUES關(guān)鍵詞一次給一個變量賦多個值(返回wikidata對應的dbpedia實體的信息)

PREFIX wd: <http://www.wikidata.org/entity/>
select DISTINCT * { 
  VALUES ?x {wd:Q309486 wd:Q4653 wd:Q76}
  ?s owl:sameAs ?x .     
  ?s ?p ?o .
  FILTER(STRSTARTS(STR(?p), "http://dbpedia.org/") )
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市勺远,隨后出現(xiàn)的幾起案子增显,更是在濱河造成了極大的恐慌疗涉,老刑警劉巖易稠,帶你破解...
    沈念sama閱讀 222,252評論 6 516
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件缸废,死亡現(xiàn)場離奇詭異,居然都是意外死亡缩多,警方通過查閱死者的電腦和手機呆奕,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,886評論 3 399
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來衬吆,“玉大人,你說我怎么就攤上這事绳泉⊙仿眨” “怎么了?”我有些...
    開封第一講書人閱讀 168,814評論 0 361
  • 文/不壞的土叔 我叫張陵零酪,是天一觀的道長冒嫡。 經(jīng)常有香客問我,道長四苇,這世上最難降的妖魔是什么孝凌? 我笑而不...
    開封第一講書人閱讀 59,869評論 1 299
  • 正文 為了忘掉前任,我火速辦了婚禮月腋,結(jié)果婚禮上蟀架,老公的妹妹穿的比我還像新娘瓣赂。我一直安慰自己,他們只是感情好片拍,可當我...
    茶點故事閱讀 68,888評論 6 398
  • 文/花漫 我一把揭開白布煌集。 她就那樣靜靜地躺著,像睡著了一般捌省。 火紅的嫁衣襯著肌膚如雪苫纤。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,475評論 1 312
  • 那天纲缓,我揣著相機與錄音卷拘,去河邊找鬼。 笑死祝高,一個胖子當著我的面吹牛栗弟,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播褂策,決...
    沈念sama閱讀 41,010評論 3 422
  • 文/蒼蘭香墨 我猛地睜開眼横腿,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了斤寂?” 一聲冷哼從身側(cè)響起耿焊,我...
    開封第一講書人閱讀 39,924評論 0 277
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎遍搞,沒想到半個月后罗侯,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 46,469評論 1 319
  • 正文 獨居荒郊野嶺守林人離奇死亡溪猿,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,552評論 3 342
  • 正文 我和宋清朗相戀三年钩杰,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片诊县。...
    茶點故事閱讀 40,680評論 1 353
  • 序言:一個原本活蹦亂跳的男人離奇死亡讲弄,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出依痊,到底是詐尸還是另有隱情避除,我是刑警寧澤,帶...
    沈念sama閱讀 36,362評論 5 351
  • 正文 年R本政府宣布胸嘁,位于F島的核電站瓶摆,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏性宏。R本人自食惡果不足惜群井,卻給世界環(huán)境...
    茶點故事閱讀 42,037評論 3 335
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望毫胜。 院中可真熱鬧书斜,春花似錦诬辈、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,519評論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至稍坯,卻和暖如春酬荞,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背瞧哟。 一陣腳步聲響...
    開封第一講書人閱讀 33,621評論 1 274
  • 我被黑心中介騙來泰國打工混巧, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人勤揩。 一個月前我還...
    沈念sama閱讀 49,099評論 3 378
  • 正文 我出身青樓咧党,卻偏偏與公主長得像,于是被迫代替她去往敵國和親陨亡。 傳聞我的和親對象是個殘疾皇子傍衡,可洞房花燭夜當晚...
    茶點故事閱讀 45,691評論 2 361

推薦閱讀更多精彩內(nèi)容