SQL год китайского форматирования часть даты - PullRequest
0 голосов
/ 24 апреля 2020

Я использую MS SQL Server 2016, я хотел бы получить только часть года заданной даты и отформатировать ее с использованием кода китайской культуры zh. Это просто сделать со всеми остальными культурными кодами, ожидаемыми для китайских культурных кодов. Например, чтобы отформатировать дату так, чтобы в культуре Engli sh (Ирландия) отображался только год, я мог бы сделать это:

select format(try_cast('2017-12-29' as date), 'yyy', 'en-IE') 

Выше будет получен желаемый результат 2017. Однако это не относится к китайским кодам культуры. Например,

select format(try_cast('2017-12-29' as date), 'yyy', 'zh')

Выше приведено 2017. Но желаемый результат - 2017年. Итак, мой вопрос: как мне правильно это понять? Ниже показано, как я получаю желаемый результат, но я не уверен, что это правильный путь. Пожалуйста помогите.

select substring(format(try_cast('2017-12-29' as date), 'D', 'zh'), 0, 6)

1 Ответ

3 голосов
/ 24 апреля 2020

Если символ всегда будет в конце, просто объедините его:

SELECT CONCAT(DATEPART(YEAR, CONVERT(date,'20171229')),N'年');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...