Как изменить маску формата в функции XMLELEMENT с Oracle DB 11g CORE 11.2.0.3.0? - PullRequest
0 голосов
/ 27 января 2020

Я использую функции XMLELEMENT и XMLATTRIBUTES в своем запросе sql, но у меня проблемы с форматом даты. Пример:

SELECT XMLELEMENT("triggers", XMLATTRIBUTES(3.2 AS "version"), 
   XMLELEMENT("request", XMLATTRIBUTES(1 AS "num"),     
   XMLELEMENT("lastname", trigg.last_name),
   XMLELEMENT("firstname", trigg.first_name),
   XMLELEMENT("middlename", trigg.middle_name),
   XMLELEMENT("birthday", trigg.birth_date).....

Поле XMLELEMENT ("birthday", trigg.birth_date) выводит на консольную дату в формате:

<birthday>1980-01-05</birthday>

Мне нужно конвертировать в маске формата:

<birthday>05.01.1980</birthday>

Данные о дате в моей базе данных сохранены как 00.00.0000 и имеют тип даты. Я пытался использовать функцию TO_DATE (дата, 'ДД.ММ.ГГГГ), TO_TIMESTAMP, но это бесполезно

Скажите, пожалуйста, как конвертировать в нужный формат? Спасибо.

1 Ответ

0 голосов
/ 27 января 2020

Вы хотите преобразовать его из даты в символ, поэтому используйте TO_CHAR

XMLELEMENT("birthday", TO_CHAR(trigg.birth_date, 'DD.MM.YYYY'))
...