У меня есть колонки формата DATETIME23.
так:Преобразовать формат даты для символьной строки
14.02.2017 13:00:25
Я хочу чтобы CONVER его в строку, так позже, я смог бы его современность, так, например, окончательный вариант будет выглядеть так:
2017-02-14 13:00:25.000
Проблема встречается, когда я пытаюсь для преобразования даты в формат char: в результате у меня есть строка smth, например 1802700293
- это количество секунд.
Я пробовал:
format date $23.0
или
date = put(date, $23.0)
P.S Это ругой попробовать:
data a;
format d date9.;
d = '12jan2016'd;
dtms = cat(day(d),'-',month(d),'-',year(d),' 00:00:00.000');
/* если нужно обязательно двухзначные день и месяц, то такой колхоз: */
if day(d) < 10 then dd=cat('0',put(day(d),$1.));
else ddday=put(day(d),$2.);
if month(d) < 10 then mm=cat('0',put(month(d),$1.));
else mm=put(month(d),$2.);
yyyy=put(year(d),$4.);
/*dtms2 = cat(dd,'-',mm,'-',yyyy,' 00:00:00.000');*/
dtms2 = cat(dd,'-',mm,'-',yyyy,' 00:00:00.000');
dtms = cat(day(d),'-',month(d),'-',year(d),' 00:00:00.000');
run;
НО, ненормально, то dtms2
CONCAT уничтожает ноль в месяц элемент
дата и время23. формат «ddmmmyy: hh: mm: ss.ss», который отличается от вашего примера. Можете уточнить, пожалуйста. – Longfish