我有一个创建的列,该列根据状态码具有不同的时间戳。我想提取不同的时间戳,并根据状态码创建新列。
select C.RM_JOB_NO,
C.DATE_CREATED,
to_char(cast((from_tz(cast(c.SEND_DATE_TIME AS TIMESTAMP),'00:00') AT TIME ZONE 'EST5EDT') AS DATE), 'yyyy-mm-dd hh24:mi:ss') as CREATED,
CASE
WHEN (c.status_code = 'ADDORD' ) THEN 'Created'
WHEN (c.status_code = 'ASGN' ) THEN 'Dispatched'
WHEN (c.status_code = 'ENRT' ) THEN 'Enroute'
WHEN (c.status_code = 'ARRIVE' ) THEN 'Onsite'
WHEN (c.status_code = 'NCLCMP' ) THEN 'Completed'
WHEN (c.status_code = 'CGIL' ) THEN 'CGI'
WHEN (c.status_code = 'CHGORD' ) THEN 'OrdChanged'
WHEN (c.status_code = 'INTRPT' ) THEN 'Interrupt'
else c.status_code
END as "Status Code" ,
c.CREATOR_ID,
c.SERVICE_ID,
c.DISPATCH_CENTER,
c.PERSONNEL_ID_ONE,
d.RESOURCE_ID,
d.emp_id,
d.employee_name,
A.ST_NO,
A.ST_NAME,
A.CITY,
A.ZIP,
A.GEO_COORD_X,
A.GEO_COORD_Y,
A.EXEC_CODE,
B.COND_FND_CD_1,
B.COND_FND_CD_2,
B.COND_FND_CD_3,
B.COND_FND_CD_4,
B.COND_LFT_CD_1,
B.COND_LFT_CD_2,
B.COND_LFT_CD_3,
B.COND_LFT_CD_4,
B.COMP_INFO_CD,
b.complete_date_time,
DetermineFieldCenter(a.Map_No, a.Grid_No, a.City, a.Zip, a.Order_SubType) "Field Center"
from fsa_order A, completion B, activity C, employee D
where A.RM_JOB_NO = B.rm_job_no
AND A.RM_JOB_NO=C.RM_JOB_NO
AND c.RESOURCE_ID=d.RESOURCE_ID
我想看到的是,如果status_code ='Created',则新列'time created'将包含“ created”状态代码的时间戳。其余状态代码相同