產生一個32位的16進位制隨機數

lastwinner發表於2005-11-04

1、SELECT SYS_GUID() FROM DUAL;
2、
select replace(s,'/','') s from (
select s,rank()over(order by length(s) desc) rk from(
select (sys_connect_by_path(a,'/')) s from (
select decode(floor(dbms_random.value*16),0,'0',1,'1',2,'2',3,'3', 4,'4',5,'5',6,'6',7,'7',8,'8',9,'9', 10,'A',11,'B',12,'C',13,'D',14,'E',15,'F') a
,rownum rn from all_objects
where rownum<=32
) connect by rn-1=prior rn
) )where rk=1[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29867/viewspace-809288/,如需轉載,請註明出處,否則將追究法律責任。

相關文章