Конвертирование даты формата 2025-01-13 18:42:23.000 в 27 февр. 2025
Подскажите возможно конвертировать дату формата "2025-01-13 18:42:23.000" в формат " 27 февр. 2025". Знаю что есть CONVERT, но он не подходит.
CONVERT(varchar, crs.start_date, 104) AS start_ad
В JS я делаю так:
function convertToDateTask(date) {
const assembler = new Date(date);
var day = assembler.getDate();
var monthName = assembler.toLocaleString('default', { month: 'short' });
var year = assembler.getFullYear();
return day + ' ' + monthName + ' ' + year;
};
Ответы (1 шт):
Автор решения: Dev18
→ Ссылка
вот так например можно
SELECT FORMAT(CONVERT(datetime, '2025-01-13 18:42:23.000'), 'dd MMM yyyy', 'ru-RU')
AS formatted_date;
результат: 13 янв 2025
а если надо с точкой, то так
DECLARE @start_date datetime = '2025-01-13 18:42:23.000';
SELECT CONVERT(varchar, DAY(@start_date)) + ' ' +
CASE MONTH(@start_date)
WHEN 1 THEN 'янв.'
WHEN 2 THEN 'февр.'
WHEN 3 THEN 'мар.'
WHEN 4 THEN 'апр.'
WHEN 5 THEN 'мая'
WHEN 6 THEN 'июня'
WHEN 7 THEN 'июля'
WHEN 8 THEN 'авг.'
WHEN 9 THEN 'сент.'
WHEN 10 THEN 'окт.'
WHEN 11 THEN 'нояб.'
WHEN 12 THEN 'дек.'
END + ' ' +
CONVERT(varchar, YEAR(@start_date)) AS formatted_date_with_point;
результат: 13 янв. 2025