create or replace function cal(v_str varchar2)
return number is
v_s varchar2(200);
v_result number;
begin
v_s:='select '||v_str||' from dual';
execute immediate v_s into v_result;
return v_result;
end;在sql命令中使用select cal(2+5*2.3/100-4.5-2.6) from dual;
呵呵,看到楼主发的另一个帖了,拿来骗分了!
return number is
v_s varchar2(200);
v_result number;
begin
v_s:='select '||v_str||' from dual';
execute immediate v_s into v_result;
return v_result;
end;在sql命令中使用select cal(2+5*2.3/100-4.5-2.6) from dual;
呵呵,看到楼主发的另一个帖了,拿来骗分了!
解决方案 »
- 經過IP分享器,無法連接oracle
- 求pl/sql developer 中一个简单的设置
- 如何查看当前哪些表的记录正在被读取?
- sql基础(第二版)的范例代码
- 根据两个日期字符串取记录问题
- table被drop了却还存在?
- 问一个理论问题。。。
- #####oracle基础菜鸟问题,大家都来看一下...20分放送
- 为什么我用SYSTEM帐户登陆时只能以Normal方式登陆?我选SYSDBA方式,系统提示我没有权限.
- hp-unix下安装oracle9i后,分配给oracle的内存是500M,启动后竟然占到900M?
- decode()函数?????
- 为什么在存储过程,函数,触发器中使用查询视图的语句就出错!
-------------------
-4.985已选择 1 行。
return number is
v_s varchar2(200);
v_result number;
begin
BEGIN
v_s:='select '||v_str||' from dual';
execute immediate v_s into v_result;
EXCEPTION
WHEN OTHERS THEN
v_result :=-9999;
END;
return v_result;
end;
就可以拉~