怎么使用DETERMINISTIC函数
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章主要讲解了"怎么使用DETERMINISTIC函数",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么使用DETERMINISTIC函数"吧!我
千家信息网最后更新 2026年11月01日怎么使用DETERMINISTIC函数
这篇文章主要讲解了"怎么使用DETERMINISTIC函数",文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习"怎么使用DETERMINISTIC函数"吧!
我定义了如下函数:
FUNCTION plch_getdata (n NUMBER) RETURN NUMBERISBEGIN RETURN n;END;
哪些选项包含了这样的代码,如果我把上述函数加上DETERMINISTIC关键字,则性能会得到改善?
两点要注意:
1. 在其中一个选项中,这个函数被"重定义"为一个内嵌的子程序。
2. 其中的两个选项包含了在ALL_SOURCE执行的查询,你可以假定这个视图中有超过1,000,000行的代码。
(A)
DECLARE n NUMBER;BEGIN FOR rec IN (SELECT plch_getdata (1) n FROM all_source WHERE ROWNUM < 1000000) LOOP n := rec.n; END LOOP;END;/
(B)
DECLARE n NUMBER;BEGIN FOR indx IN 1 .. 10000000 LOOP n := plch_getdata (1); END LOOP;END;/
(C)
DECLARE n NUMBER; FUNCTION plch_getdata (n NUMBER) RETURN NUMBER DETERMINISTIC IS BEGIN RETURN n; END;BEGIN FOR indx IN 1 .. 10000000 LOOP n := plch_getdata (1); END LOOP;END;/
(D)
DECLARE n NUMBER;BEGIN FOR rec IN (SELECT plch_getdata (ROWNUM) n FROM all_source WHERE ROWNUM < 1000000) LOOP n := rec.n; END LOOP;END;/
答案AB.
A和B都反复调用同样的函数并使用同样的参数。加上deterministic 之后, 函数结果会被缓存,只有一次调用。
C:语法错误,嵌套子程序里面不可以用deterministic。
D:每次参数都发生变化因此无法缓存。
感谢各位的阅读,以上就是"怎么使用DETERMINISTIC函数"的内容了,经过本文的学习后,相信大家对怎么使用DETERMINISTIC函数这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是,小编将为大家推送更多相关知识点的文章,欢迎关注!
函数
学习
代码
内容
参数
子程序
缓存
两个
关键
关键字
只有
就是
思路
性能
情况
文章
更多
知识
知识点
答案
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
咖啡
南京欣网互联网络科技有限公司
上海卓越科技互联网
涨乐互联网科技
互联网科技社
互联网 科技公司
撒么互联网科技公司
居家互联网科技有限公司
互联网汽车科技小镇
互联网时代科技改变生活
广州市恰铎互联网科技有限公司
互联网科技研发水平
互联网科技的全部知识
玉溪新华互联网科技好不好
美国互联网科技实力
宇信科技在杭州互联网排第几
互联网科技品牌
河南商务圈互联网科技有限公司
宁波允成互联网科技有限公司
银川新华互联网科技学校招聘
有格互联网科技
伟宏互联网科技
互联网的科技创新
奇酷互联网络科技
上海亿帐通互联网科技
互联网科技有限公司 翻译
互联网与医疗科技
迪庆互联网科技招生
科技互联网的核心竞争力
半导体行业属于互联网高科技类吗