您的位置:首页 > 数据库 > Oracle

oracle中日期类型与unix 时间戳的转换

2012-09-16 10:27 399 查看
Unix时间戳记是从'1970-01-01 00:00:00'GMT开始的秒数,表现为整数型。

Oracle中的时间是Date型,以下函数提供了两种时间转换的Oracle函数

(1)从Unix时间戳记转换为Oracle时间

create or replace function unix_to_oracle(in_number NUMBER) return date is

begin

return(TO_DATE('19700101','yyyymmdd') + in_number/86400 +TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))/24);

end unix_to_oracle;

(2)由Oracle时间Date型转换为Unix时间戳记

create or replace function oracle_to_unix(in_date IN DATE) return number is

begin

return( (in_date -TO_DATE('19700101','yyyymmdd'))*86400 - TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))*3600);

end oracle_to_unix;

1. 随机数包

?
2. 在[0..100]范围内取随机数

?
3. 大于字符‘A’的10个字符随机字符串

?
4. 单个小写随机字符

?
5. 在过去10天内取随机日期

?
6. 在过去30分钟内取随机时间

?
随机函数

?
unix/linux 时间戳转换为标准时间格式(主要是注意时区问题):

sql代码

?
反过来也一样,还是要考虑时区

?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: