Работа с датами, конвертировать формат даты в текст - PullRequest
0 голосов
/ 28 августа 2018

У меня есть столбец даты в таблице

Date
2017-04-01
2017-05-01
2017-04-01

как я могу конвертировать в ниже

Date
01april2017
01may2017
01april2017

1 Ответ

0 голосов
/ 28 августа 2018

Вы можете попробовать использовать to_char с DDmonthYYYY форматом.

из-за формата

month будет содержать полное название месяца в нижнем регистре (с пробелами до 9 символов) так что вы можете попробовать использовать функцию replace для удаления пробела.

CREATE TABLE T(
   DATE TIMESTAMP
);


INSERT INTO T VALUES ('2017-04-01');
INSERT INTO T VALUES ('2017-05-01');
INSERT INTO T VALUES ('2017-04-01');

Запрос 1 :

SELECT replace(to_char(DATE, 'DDmonthYYYY'),' ','')
FROM T

Результаты :

|     replace |
|-------------|
| 01april2017 |
|   01may2017 |
| 01april2017 |

Если типом Date является строка, вы можете попробовать использовать to_date, пусть это будет тип даты, тогда to_char

SELECT to_char(to_date(Date, 'YYYY-MM-DD'), 'DDmonthYYYY')
FROM T
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...