【发布时间】:2020-09-30 09:50:53
【问题描述】:
我有以下选择来获取包含时间戳的文件名并将其转换为日期/时间字段的正确格式,但是当我使用 TO_CHAR(TO_DATE... 它会导致我的第一个和第三个子字符串重复. 当我不使用 TO_CHAR(TO_DATE... 它不重复???
SELECT
SUBSTR(COMPARE_FILENAME, INSTR(FILENAME, 'e', 1) + 7, 2) ||'-'||
TO_CHAR(TO_DATE(SUBSTR(FILENAME, INSTR(FILENAME, 'e', 1) + 5, 2), 'MM')) ||'-'||
SUBSTR(FILENAME, INSTR(FILENAME, 'e', 1) + 1, 2) ||' '||
SUBSTR(FILENAME, INSTR(FILENAME, 'e', 1) + 9, 2) ||'.'||
SUBSTR(FILENAME, INSTR(FILENAME, 'e', 1) + 11, 2) ||'.'||
SUBSTR(FILENAME, INSTR(FILENAME, 'e', 1) + 13, 2) AS TIME
FROM TABLE1 WHERE ID = 1662;
我从中选择的列有:Name20200601225511.txt
它返回:01-01-JUN-20-20 22.55.11
【问题讨论】: