DB2: Использование функций DATE для получения названий месяцев или дней на другом языке (немецкий) - PullRequest
0 голосов
/ 05 февраля 2019

Я хочу построить измерение времени в хранилище данных.В некоторых полях должно быть указано название месяца или недели.С помощью функций TO_CHAR(loaddate,'MONTH') или TO_CHAR(loaddate,'DAY') я получаю имена, но они на английском языке.В моем случае они мне нужны на немецком языке.

Есть ли способ получить их напрямую на нужном языке или мне нужно работать с CASE и перевести его в пользовательскую функцию?

Спасибо

TO_CHAR(loaddate,'MONTH')

Возвращает ЯНВАРЬ ожидается JANUAR

TO_CHAR(loaddate,'DAY')

Возвращает понедельник ожидается Montag

1 Ответ

0 голосов
/ 05 февраля 2019

Попробуйте установить специальный регистр CURRENT LOCALE LC_TIME перед запуском SQL.

Ссылка

Список поддерживаемых локалей приведен в списке здесь .Например, de_DE или de_CH.

Вот пример использования командной строки, вы также можете установить специальный регистр на лету или внутри хранимых процедур:

$ db2 "values monthname(current date)"

1                                                                                                   
----------------------------------------------------------------------------------------------------
February                                                                                            

  1 record(s) selected.

$db2 "set current locale lc_time = 'de_DE'"
DB20000I  The SQL command completed successfully.

$ db2 "values monthname(current date)"

1                                                                                                   
----------------------------------------------------------------------------------------------------
Februar                                                                                             

  1 record(s) selected.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...