我目前使用的http://dbpedia.org/snorql網站推出類似下面的一些基本要求:過濾SPARQL結果由日,月
PREFIX dbpedia0: <http://dbpedia.org/ontology/>
SELECT ?body ?value WHERE {
?body a dbpedia0:Person.
?body dbpedia0:birthDate ?value.
}
ORDER BY ?value
我想找個過濾結果的方式這樣纔有人出生日期X
月Y
正在選擇(無論出生年份)。我一直在嘗試了許多方法,如這樣做:
1)基本過濾:FILTER(xsd:date(?value) = "2000-01-01"^^xsd:date)
但我不現在如何確切的事實,我不關心這一年...
2)使用MONTH()
和DAY()
函數應該導致整數值代表月份和日期......但是這些似乎不起作用,因爲我的日期類型被認爲是一個無效的輸入參數。
3)將日期轉換爲字符串變量。然後測試此字符串變量(對應於月份和日期)的結束字符是否與所需的月份和日期匹配。這將是這樣的:FILTER(STRENDS(CONVERT(CHAR, ?value),"01-01") = true)
顯然,上面列出的方法都沒有適當的工作......哈哈。 請不要責怪我的請求糟糕的語法,因爲我剛剛開始使用SPARQL命令。
我會非常感謝任何幫助或其他在那裏!
爲什麼添加標籤MYSQL和SQL?你爲什麼在談論「我剛剛開始使用SQL」命令? SPARQL!= SQL – AKSW
並且格式化問題也有幫助,請按照http://stackoverflow.com/help/formatting – AKSW
DBpedia數據是非常不同的,尤其是日期文字是xsd:date,xsd:dateTime,xsd:gYear,等等這使得它非常難以投射和過濾 – AKSW