Извлеките 3 буквы месяца и года из столбца Date в другом формате с помощью sqlserver - PullRequest
1 голос
/ 12 марта 2020

У меня есть столбец Date1

Date1

08-09-1998
11-10-1998
17-10-1999
23-09-1998
28-12-1997

Требуемый вывод, который мне требуется, следующий:

Date1

Sep-98
Oct-98
Oct-99
Sep-98
Dec-97

Помощь будет оценена спасибо.

1 Ответ

2 голосов
/ 12 марта 2020
select DATE_FORMAT(date_col, '%b-%y') AS Displaydate  from test

Вот демо

Если это varchar:

select DATE_FORMAT(STR_TO_DATE(date_col, '%d-%m-%Y'), '%b-%y') AS Displaydate  from test

Вот демо для обеих ситуаций .

Поскольку OP изменил информацию базы данных, здесь решение для SQLServer для даты типа данных:

SELECT concat( FORMAT([date_col], 'MMM', 'en-US'), '-', YEAR( date_col ) % 100) 
from test

Вот демонстрационная версия

А вот решение для типа данных varchar:

SELECT concat( FORMAT([date_col], 'MMM', 'en-US'), '-', YEAR( date_col ) % 100)
, concat( FORMAT(convert(date, var_col, 105), 'MMM', 'en-US'), '-', YEAR( date_col ) % 100) 
from test

Вот демоверсия для обоих вариантов.

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