我们已经创建了一个 SPARQL 端点dotnetrdf
,我是一个与 SPARQL 相关的初学者。日期字段已存储为格式中的字符串MM/DD/YYYY
。现在,需要日期比较 ( > <
),字符串必须转换为SPARQL 查询xsd:datetime
或xsd:date
在 SPARQL 查询中。有没有办法做到这一点?还有其他选择吗?
中是否有任何可用于与日期相关的 SPARQL 查询的好示例dotnetrdf
?
谢谢。
我认为答案是可以,但可能不想!
您应该能够使用 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:dates
or xsd:dateTimes
。