我是SPARQL的新手,现在已经搜索了很长一段时间了。我的端点是http://dbpedia.org/sparql,我使用http://yasgui.laurensrietveld.nl/来执行查询。
我可以检索看起来像1994-04-11 00:00:00的日期。现在为了显示目的,我需要将日期显示为MM / DD / yyyy格式,即4/11/1994。有什么功能可以帮助我吗?
我不想使用STR,CONCAT,YEAR,MONTH,DAY函数,因为我希望查询结果按照最早的日期排序。
编辑:我的查询按名称顺序排列?日期。我想得到最早的约会。例如对于“abc”,我有三个日期,10/13/2001; 2007年10月15日和2007年10月22日。我想获得最早的日期10/13/2001。
答案 0 :(得分:4)
假设您选择的DBPedia中的日期值是有效的xsd:dateTime
字符串(您的问题中的字符串无效),您可以按照以下方式轻松执行此操作:
SELECT ?x (CONCAT(STR(MONTH(?date)),
"/",
STR(DAY(?date)),
"/",
STR(YEAR(?date))) as ?displayDate)
WHERE {
?x :hasDate ?date.
}
ORDER BY ?date