我的实际要求是,
这是我们在.txt文件中输入的内容,
下面一行具有(Emp ID,日期,HH:MM:SS(即时间),状态,站点编号,读者编号
123,“ 20/02/2019”,00:00:50,IN,23,1
在上面,我必须将123作为Emp ID,并将其分配给一个名为tv_emp_id的变量。
then, have to take date and HH:MM ("20/02/2019",02:30) and convert it into IST date & time (21-02-2019,14:00)), then put date (21-02-2019 format) alone in one variable called tv_date and HHMM in another variable called tv_time (14:00 it will be 1400) by Oracle query.
Finally required it with, tv_emp_id= 123;
tv_date = 21-02-2019
tv_time = 1400
请帮助我解决它。
谢谢
答案 0 :(得分:1)
如果您的意思是Central Standard Time and India Standard Time,并且是从简单的时间戳开始的话:
alter session set nls_timestamp_format = 'YYYY-MM-DD HH24:MI:SS';
alter session set nls_timestamp_tz_format = 'YYYY-MM-DD HH24:MI:SS TZD';
select timestamp '2019-03-20 02:00:00' as original,
from_tz(timestamp '2019-03-20 02:00:00', 'America/Chicago') as cst,
from_tz(timestamp '2019-03-20 02:00:00', 'America/Chicago') at time zone 'Asia/Calcutta' as ist
from dual;
ORIGINAL CST IST
------------------- ----------------------- -----------------------
2019-03-20 02:00:00 2019-03-20 02:00:00 CDT 2019-03-20 12:30:00 IST
如果要以纯时间戳(或日期)结尾,而不是以带时区的时间戳结尾,则将结果设置为所需的数据类型。
如果您从日期开始,则需要将其强制转换为from_tz()
调用中的时间戳。