Oracle常见问题
办公室里穿拖鞋
资深互联网业务安全从业者
展开
-
Oracle数据库中的like优化-性能调优
1。尽量不要使用 like '%..%' 2。对于 like '..%..' (不以 % 开头),Oracle可以应用 colunm上的index 3。对于 like '%...' 的 (不以 % 结尾),可以利用reverse + function index 的形式,变化成 like '..%' 代码: -- '建测试表和转载 2014-07-23 15:09:43 · 1287 阅读 · 0 评论 -
oracle url encode decode
utl_url.escape('https://www.abc.com/trade/gathering_index.htm?src=我们',false,'GB2312');utl_url.unescape('https://www.abc.com/trade/gathering_index.htm?src=%CE%D2%C3%C7','GB2312');转载 2015-10-26 14:30:43 · 1611 阅读 · 0 评论 -
ORACLE 中ROWNUM用法总结!
ORACLE 中ROWNUM用法总结! 对于 Oracle 的 rownum 问题,很多资料都说不支持>,>=,=,between...and,只能用以上符号(,>=,=,between..and 时会提示SQL语法错误,而是经常是查不出一条记录来,还会出现似乎是莫名其妙的结果来,其实您只要理解好了这个 rownum 伪列的意义就不应该感到惊奇,同样是伪列,rownum 与 rowid 可有些转载 2015-07-06 18:09:55 · 537 阅读 · 0 评论 -
Oracle 判断某個字段的值是不是数字
壹共有三种方法,分别是使用 to_number()、regexp_like() 和 translate() 三种函数来进行匹配。如果字段的值是数字,返回1,否则返回0。由于 Oracle 数据库本身没有提供检测字段是否为数字的方法,因此我们需要自行创建壹個 isnumeric() 的函数,然后再调用它来进行判断。壹共有三种方法,分别是使用 to_number()、regexp_li转载 2015-04-27 14:34:18 · 1749 阅读 · 0 评论 -
查出数字字符字段中非数字字符的记录
转载,这个方法是我试过的方法中速度最快的,推荐!近,将原来的数字符字段转换为数字时,总报错误:无效数字。如何找出其中哪些是非数字字符的记录?比较麻烦的事。下面是用Oracle DB自带的函数translate可以找出来的1.创建测试表Create Table TestChar( ITEM_NUMBER VARCHAR2(20));转载 2015-04-29 10:40:55 · 746 阅读 · 0 评论 -
DBLINK HINT /*+ driving_site(org) */ 优化策略和思路
使用DBLINK远程访问数据库的优化策略和思路:策略:远程访问,网络传输占很大部分,优化原则,减少网络传输,将小的结果集拉到本地处理;思路1:在远端建立视图;思路2:使用DRIVING_SITE将数据拉到本地处理;出现这种执行计划,主要原因是使用了db link,要想看到执行计划,可以加 hint,如: /*+remote_mapping转载 2015-03-24 10:04:04 · 1272 阅读 · 0 评论 -
利用ORACLE实现数据抽样
做数据分析的,免不了碰到记录数据量很大,怎么办?做全面分析是不现实也没有必要。介绍一下抽样方法及实现几种常用的抽样方法:1.简单随机抽样(simple random sampling)将所有调查总体编号,再用抽签法或随机数字表随机抽取部分观察数据组成样本。优点:操作简单,均数、率及相应的标准误计算简单。缺点:总体较大时,难以一一编号。转载 2015-03-26 10:07:31 · 1152 阅读 · 0 评论 -
oracle查看系统资源占用情况
1,连上服务器,使用top命令,可以查看cpu使用率以及内存的使用情况等等,还有当前各用户的使用情况2,用pl/sql developper,tool里面选sessions,就可以看到当前session的情况,包括卡住的SQL语句3,查看各用户的各种资源占用,可以运行下面的SQLselect se.SID, ses.username, ses.osuser, n.NAME, se.VA转载 2014-09-11 09:47:19 · 2866 阅读 · 0 评论 -
Oracle IP转数字函数
具体函数如下,可以直接在plsql中使用,来源于网络,具体链接找不到了,抱歉!原创 2014-08-04 10:55:50 · 2508 阅读 · 0 评论 -
多个oracle with as用法
关于oracle with as用法with as语法–针对一个别名with tmp as (select * from tb_name)–针对多个别名with tmp as (select * from tb_name), tmp2 as (select * from tb_name2), tmp3 as (select * from tb_nam转载 2014-08-21 09:46:54 · 13828 阅读 · 0 评论 -
oracle where语句的连接顺序
Where子句中条件的顺序对性能没有影响(不管是CBO还是RBO优化器模式),注意,额外说一下,这里只是说条件的顺序,不包含表的顺序。在RBO优化器模式下,表应按结果记录数从大到小的顺序从左到右来排列,因为表间连接时,最右边的表会被放到嵌套循环的最外层。最外层的循环次数越少,效率越高。原创 2014-07-24 19:04:00 · 1214 阅读 · 0 评论 -
判定时间是否有效的函数
判定一个 CREATE OR REPLACE FUNCTION is_date(parameter VARCHAR2) RETURN NUMBER IS val DATE;BEGIN val := TO_DATE(NVL(parameter, 'a'), 'yyyy-mm-dd hh24:mi:ss'); RETURN 1;EXCEPTION WHEN OTHE转载 2014-07-24 12:40:55 · 1442 阅读 · 0 评论 -
准确计算oracle表分区记录数
1,先对表进行分析:analyze table [table] compute statistics;2,然后查询表分区记录数select t.partition_name,t.num_rows from all_tab_partitions t where table_name='table_name'原创 2016-06-02 20:37:53 · 3976 阅读 · 0 评论