[20240905]Select vs Assign – How To Assign PLSQL Variables.txt --//重复测试: 1.环境: Elapsed: 00:00:02.79 SCOTT@book01p> @ver2 ============================== PORT_STRING : x86_64/Linux 2.4.xx VERSION : 21.0.0.0.0 BANNER : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production BANNER_FULL : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production Version 21.3.0.0.0 BANNER_LEGACY : Oracle Database 21c Enterprise Edition Release 21.0.0.0.0 - Production CON_ID : 0 PL/SQL procedure successfully completed. 2.建立测试脚本: $ cat select.sql1 set timing on declare vDate date; vString1 varchar2(32); vString2 varchar2(32); begin for i in 1..1e6 loop --//select sysdate into vDate from dual; SELECT NVL (SYS_CONTEXT ('userenv', 'ip_address'), '127.0.0.1'), SYS_CONTEXT ('USERENV','SID') INTO vString1,vString2 FROM DUAL; end loop; end; / $ cat assign.sql set timing on declare vDate date; vString1 varchar2(32); vString2 varchar2(32); begin for i in 1..1e6 loop --// vDate := sysdate; vString1 := NVL (SYS_CONTEXT ('userenv', 'ip_address'), '127.0.0.1'); vString2 := SYS_CONTEXT ('USERENV','SID'); end loop; end; / SCOTT@book01p> @ select.sql1 PL/SQL procedure successfully completed. Elapsed: 00:00:13.05 SCOTT@book01p> @ assign.sql PL/SQL procedure successfully completed. Elapsed: 00:00:02.79 --//通过这样方法简单sql语句执行,性能提高 13.05/2.79 = 4.68倍. SYS@book> @ashtop sql_id 1=1 trunc(sysdate)+17/24+32/1440+44/86400 trunc(sysdate)+17/24+33/1440+23/86400 Total Distinct Distinct Distinct Seconds AAS %This SQL_ID FIRST_SEEN LAST_SEEN Execs Seen Tstamps Execs Seen1 --------- ------- ------- ------------- ------------------- ------------------- ---------- -------- ----------- 13 .3 57% | 2024-09-05 17:32:46 2024-09-05 17:33:20 1 11 11 9 .2 39% | 1w3bnfhyp4u5h 2024-09-05 17:32:49 2024-09-05 17:33:00 9 9 9 1 .0 4% | f1hbvj9nmqvy3 2024-09-05 17:32:48 2024-09-05 17:32:48 1 1 1 SYS@book> @ sql_id 1w3bnfhyp4u5h --SQL_ID = 1w3bnfhyp4u5h SELECT NVL (SYS_CONTEXT ('userenv', 'ip_address'), '127.0.0.1'), SYS_CONTEXT ('USERENV','SID') FROM DUAL; SYS@book> @ sql_id f1hbvj9nmqvy3 --SQL_ID = f1hbvj9nmqvy3 declare vDate date; vString1 varchar2(32); vString2 varchar2(32); begin for i in 1..1e6 loop --//select sysdate into vDate from dual; SELECT NVL (SYS_CONTEXT ('userenv', 'ip_address'), '127.0.0.1'), SYS_CONTEXT ('USERENV','SID') INTO vString1,vString2 FROM DUAL; end loop; end;; SYS@book> @ashtop sql_id 1=1 trunc(sysdate)+17/24+34/1440+18/86400 trunc(sysdate)+17/24+34/1440+26/86400 Total Distinct Distinct Distinct Seconds AAS %This SQL_ID FIRST_SEEN LAST_SEEN Execs Seen Tstamps Execs Seen1 --------- ------- ------- ------------- ------------------- ------------------- ---------- -------- ----------- 3 .4 100% | 285ch5t1rgja4 2024-09-05 17:34:22 2024-09-05 17:34:24 1 3 1 SYS@book> @ sql_id 285ch5t1rgja4 --SQL_ID = 285ch5t1rgja4 declare vDate date; vString1 varchar2(32); vString2 varchar2(32); begin for i in 1..1e6 loop --// vDate := sysdate; vString1 := NVL (SYS_CONTEXT ('userenv', 'ip_address'), '127.0.0.1'); vString2 := SYS_CONTEXT ('USERENV','SID'); end loop; end;;
[20240905]Select vs Assign – How To Assign PLSQL Variables.txt
来源:这里教程网
时间:2026-03-03 20:34:28
作者:
编辑推荐:
- [20240905]Select vs Assign – How To Assign PLSQL Variables.txt03-03
- Oracle 分布式事务定位源头SQL03-03
- 阿斗采集 抖音小店商家电话采集工具教程分享03-03
- 查看oracle 历史执行计划(根据awr的snap_id)03-03
- Oracle数据恢复—人为误删除Oracle数据库数据怎么恢复?03-03
- oracle cpu使用率接近100%排查思路03-03
- [20240821]建立完善kglob.sql脚本.txt03-03
- [20240822]e8ec445edab00042802d511305ab90fa full_hash_value.txt03-03
下一篇:
相关推荐
-
雷神推出 MIX PRO II 迷你主机:基于 Ultra 200H,玻璃上盖 + ARGB 灯效
2 月 9 日消息,雷神 (THUNDEROBOT) 现已宣布推出基于英
-
制造商 Musnap 推出彩色墨水屏电纸书 Ocean C:支持手写笔、第三方安卓应用
2 月 10 日消息,制造商 Musnap 现已在海外推出一款 Oce
热文推荐
- 数据库管理-第235期 为什么RAC架构仍然很强(20240827)
数据库管理-第235期 为什么RAC架构仍然很强(20240827)
26-03-03 - rac集群二几点重启ora.gipcd不能正常启动
rac集群二几点重启ora.gipcd不能正常启动
26-03-03 - ORA-00600: 内部错误代码, 参数: [13011]处理
ORA-00600: 内部错误代码, 参数: [13011]处理
26-03-03 - 超过100万行 存储过程的超复杂Oracle数据库,国产化怎么办?
超过100万行 存储过程的超复杂Oracle数据库,国产化怎么办?
26-03-03 - 4家国产数据库上市公司半年报!最好的利润1个亿!最差的亏8000万!
4家国产数据库上市公司半年报!最好的利润1个亿!最差的亏8000万!
26-03-03 - PORCESS满 故障处理报告
PORCESS满 故障处理报告
26-03-03 - 无缝连接!YashanDB DBLink技术应用实践
无缝连接!YashanDB DBLink技术应用实践
26-03-03 - Oracle 数据库忘记密码,如何找回明文密码?
Oracle 数据库忘记密码,如何找回明文密码?
26-03-03 - Oracle 丢失Redo、Control、SYSAUX、USER文件,无备份,成功启库!
- 阿里财报透视:谁在投入?谁在收缩?
阿里财报透视:谁在投入?谁在收缩?
26-03-03
