#datetime #xquery
#дата-время #xquery
Вопрос:
Как преобразовать «2020-09-14T14:04:43.123 0000» в Datetime «ГГГГ-ММ-ДД ЧЧ24: MI: SS» и добавить минуты в XQuery.
Комментарии:
1. Почему
YYYY-MM-DD
это Datetime? Я не вижу там никакого времени.2. обновлено «ГГГГ-ММ-ДД ЧЧ24: MI: SS» спасибо
3. Это может быть немного сложнее, часть
2020-09-14T14:04:43.123
подходит дляxs:dateTime
конструктора, но суффикс часового пояса0000
находится в неправильном формате для этого конструктора. Добавить минуты кxs:dateTime
можно решить, добавивxs:dayTimeDuration
. Форматированиеxs:dateTime
выполняется с помощьюformat-dateTime
.
Ответ №1:
Чтобы преобразовать используемый формат DateTime в тот, который ожидают xs:dateTime
функции конструктора, вы могли бы вставить двоеточие:
xs:dateTime("2020-09-14T14:04:43.123 0000" => replace('([0-9)][0-9])([0-9][0-9])$', '$1:$2'))
Чтобы добавить несколько минут, добавьте xs:dayTimeDuration
с правильным M
компонентом (минуты), например
xs:dateTime("2020-09-14T14:04:43.123 0000" => replace('([0-9)][0-9])([0-9][0-9])$', '$1:$2')) xs:dayTimeDuration('PT12M')
Для форматирования создайте правильную строку изображения для format-dateTime
, например:
format-dateTime(xs:dateTime("2020-09-14T14:04:43.123 0000" => replace('([0-9)][0-9])([0-9][0-9])$', '$1:$2')) xs:dayTimeDuration('PT12M'), '[Y0001]-[M01]-[D01] [H01]24:[m01]:[s01]')