Oracle数据库系统使用经验六则 |
发布时间: 2012/7/13 14:28:59 |
笔者的工作与Oracle数据库"息息相关",从事Oracle开发及管理已经10余年,在实践中学习和摸索了一些小经验,在此与大家共同探讨.
---- 1.having 子句的用法 ---- having 子句对 group by 子句所确定的行组进行控制,having 子句条件中只允许涉及常量,聚组函数或group by 子句中的列. ---- 2.外部联接"+"的用法 ---- 外部联接"+"按其在"="的左边或右边分左联接和右联接.若不带"+"运算符的表中的一个行不直接匹配于带"+"预算符的表中的任何行,则前者的行与后者中的一个空行相匹配并被返回.若二者均不带´+´,则二者中无法匹配的均被返回.利用外部联接"+",可以替代效率十分低下的 not in 运算,大大提高运行速度.例如,下面这条命令执行起来很慢
---- 倘若利用外部联接,改写命令如下:
---- 可以发现,运行速度明显提高. ---- 3.删除表内重复记录的方法 ---- 可以利用这样的命令来删除表内重复记录:
---- 不过,当表比较大(例如50万条以上)时,这个方法的效率之差令人无法忍受,需要另想办法(可参看拙文《电信计费中长途重复话单的技术处理》,《计算机与通信》,1999-07). 本文出自:亿恩科技【www.enkj.com】 |