我在SPARQL查询中有一个日期时间,我想将它转换为一个日期。因此,我要:
BIND(CONCAT(YEAR(?dateTime), "-",MONTH(?dateTime), "-", DAY(?dateTime)) as ?date) 这部分代码工作,但返回例如2022-2-3,我希望它是2022-02-03。如果dateTime是2022-11-23,什么都不应该改变.
发布于 2022-05-18 20:43:22
@gregory-williams给出了一个便携的答案。另一种方法是F&O (XPath和XQuery函数和运算符3.1)中的函数“fn:format-.”
我不确定各种triplestores中的内容- Apache提供了fn:format-number,这是问题所需要的,但是fn-format-dateTime等等。
看见
https://www.w3.org/TR/xpath-functions-3/#formatting-the-number
https://www.w3.org/TR/xpath-functions-3/#formatting-dates-and-times
例如:
fn:format-number(1,"000")返回字符串"001“。
Apache还有一个本地扩展afn:sprintf,它使用sprintf的C或sprintf语法。
afn:sprintf("%03d", 1)返回"001“。
https://stackoverflow.com/questions/72286700
复制相似问题