Форматирование целочисленных значений в SPARQL

У меня есть несколько целочисленных значений в части объекта RDF, как показано ниже:

subject predicate object
  :a1    :d1       2017
  :a2    :d1     201601
  :a3    :d1     20170510

Мне нужно найти ли тему :a1значение объекта больше чем :a2стоимость объекта и :a2значение объекта больше чем :a3Значение объекта или нет через SPARQL. Однако, прежде чем писать этот запрос, мне нужно сделать все значения объекта восьмизначными, добавив дополнительные нули к правой стороне значения, как показано ниже:

subject predicate  object
  :a1    :d1      20170000
  :a2    :d1      20160100
  :a3    :d1      20170510

Не могли бы вы дать мне знать, как отформатировать значения объекта до восьмизначного числа в SPARQL? Спасибо.

1 ответ

Вы можете использовать следующее, я не знаю, есть ли функция PAD в SPARQL

SELECT xsd:integer(substr(concat(str(?o),"00000000"),1,8))
Другие вопросы по тегам