Oracle生成隨機日期時間

2021-12-30 02:44:36 字數 806 閱讀 1076

一、生成隨機日期

例如,生成乙個2023年內的任意日期:

/** 分析:2023年內的任意日期,即日期範圍是(2015-01-01, 2015-12-31)

* 可以轉化為 2015-01-01 + (0, 365),

* 其中,2015-01-01 就是'指定日期』; (0, 365) 就是'指定範圍』

*/1. 首先確定2023年1月1日的日期整數:

select to_char(to_date('2015-01-01', 'yyyy-mm-dd'), 'j') from dual; --系統給的結果是: 2457024

2. 生成指定範圍[min_value, max_value]內的隨機日期:

select to_date(2457024 + trunc(dbms_random.value(0, 365)), 'j') from dual;

二、生成隨機日期+時間

select to_date(trunc(dbms_random.value(

to_number(to_char(to_date('20150101','yyyymmdd'),'j')),

to_number(to_char(to_date('20150501','yyyymmdd')+1,'j')))),'j')+

dbms_random.value(1,3600)/3600

prize_time

from dual;

生成2015-01-01 00:00:00至2015-05-01 23:59:59內的日期時間

Oracle的隨機數 隨機日期和時間 隨機字串

1.隨機數包 select dbms random.value from dual 2.在 0.100 範圍內取隨機數 select trunc dbms random.value 0,100 from dual 3.大於字元 a 的10個字元隨機字串 select dbms random.stri...

Oracle 的隨機數 隨機日期和時間 隨機字串

code 1.隨機數包 code sql select dbms random.value from dual 2.在 0.100 範圍內取隨機數 select trunc dbms random.value 0,100 from dual 3.大於字元 a 的10個字元隨機字串 select db...

Oracle 的隨機數 隨機日期和時間 隨機字串

1.隨機數包 select dbms random.value from dual 2.在 0.100 範圍內取隨機數 select trunc dbms random.value 0,100 from dual 3.大於字元 a 的10個字元隨機字串 select dbms random.stri...