最近在项目中要模拟很多有外键关联的数据。写了工具方法,发现很好用,记录一下。
例如:随机从 T_USER表中得到一个USERID.
select getColValue('T_USER','USERID') from dual;
函数如下:
例如:随机从 T_USER表中得到一个USERID.
select getColValue('T_USER','USERID') from dual;
函数如下:
点击(此处)折叠或打开
-
--随机取得中某表中的某个字段的值
-
function getColValue(p_table varchar,p_column varchar) return varchar is
-
t_str varchar(50);
-
v_sql varchar2(1000);
-
begin
-
v_sql :='with base as (select '||p_column ||',rownum line from '||p_table ||' a)
-
select '||p_column ||'
-
from base t
-
where t.line = (select max(floor(DBMS_RANDOM.VALUE(1,(select count(*) from '||p_table ||')))) from dual)';
-
execute immediate v_sql into t_str;
-
return t_str;
- end;
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/30066956/viewspace-1803330/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/30066956/viewspace-1803330/