PLSQL:2个时间戳之间的随机时间戳
PLSQL: random timestamp between 2 timestamps
我有一个代表当前时间戳的时间戳:
now := CURRENT_TIMESTAMP;
tomorrow := now + INTERVAL '1' DAY;
现在我想在这两个值之间呈现一个随机时间戳,
我试过 DBMS_RANDOM 但它不起作用
有帮助吗?
这将在当前时间戳和 sysdate+1 之间生成一个随机时间戳:
SELECT TO_DATE(SYSDATE, 'MM/DD/YYYY HH24:MI:SS') +
dbms_random.value(0, TO_DATE(SYSDATE, 'MM/DD/YYYY HH24:MI:SS') -
TO_DATE(SYSDATE, 'MM/DD/YYYY HH24:MI:SS')+1)
FROM dual;
作为PL/SQL:
DECLARE
l_ran_time TIMESTAMP;
BEGIN
SELECT SYSDATE +
dbms_random.value(0, SYSDATE -
SYSDATE+1)
INTO l_ran_time
FROM dual;
dbms_output.put_line(l_ran_time);
END;
/
我有一个代表当前时间戳的时间戳:
now := CURRENT_TIMESTAMP;
tomorrow := now + INTERVAL '1' DAY;
现在我想在这两个值之间呈现一个随机时间戳, 我试过 DBMS_RANDOM 但它不起作用
有帮助吗?
这将在当前时间戳和 sysdate+1 之间生成一个随机时间戳:
SELECT TO_DATE(SYSDATE, 'MM/DD/YYYY HH24:MI:SS') +
dbms_random.value(0, TO_DATE(SYSDATE, 'MM/DD/YYYY HH24:MI:SS') -
TO_DATE(SYSDATE, 'MM/DD/YYYY HH24:MI:SS')+1)
FROM dual;
作为PL/SQL:
DECLARE
l_ran_time TIMESTAMP;
BEGIN
SELECT SYSDATE +
dbms_random.value(0, SYSDATE -
SYSDATE+1)
INTO l_ran_time
FROM dual;
dbms_output.put_line(l_ran_time);
END;
/