5

我们已经创建了一个 SPARQL 端点dotnetrdf,我是一个与 SPARQL 相关的初学者。日期字段已存储为格式中的字符串MM/DD/YYYY。现在,需要日期比较 ( > <),字符串必须转换为SPARQL 查询xsd:datetimexsd:date在 SPARQL 查询中。有没有办法做到这一点?还有其他选择吗?

中是否有任何可用于与日期相关的 SPARQL 查询的好示例dotnetrdf

谢谢。

4

1 回答 1

6

我认为答案是可以,但可能不想!

您应该能够使用 SPARQL 1.1SUBSTR函数以及concat和来做到这一点strdt

类似的东西

strdt(concat(substr(?x, 7, 4), '-', substr(?x, 1, 2), '-', substr(?x, 4, 2), 'T00:00:00'), xsd:dateTime)

与您的日期值?x绑定的位置。假设没有拼写错误MM/DD/YYYY,该函数的返回值应该是合法的。xsd:dateTime

如果是我,我会提取所有MM/DD/YYYY数据,在外部对其进行处理,然后将其他数据添加为xsd:datesor xsd:dateTimes

于 2012-06-21T13:56:27.250 回答