金融IT技术人员
避免不需要的造型操作
避免不需要的instanceof操作
让访问实例内变量的getter/setter方法变成”final”
使用'System.arraycopy ()'代替通过来循环复制数组
在finally块中关闭Stream
为'Vectors' 和 'Hashtables'定义初始大小
避免在循环条件中使用复杂表达式
分离表和索引
使用显式的游标(CURSORs)
使用日期
优化GROUP BY
CBO下使用更具选择性的索引
连接多个扫描
需要当心的WHERE子句
避免改变索引列的类型.
用WHERE替代ORDER BY
使用提示(Hints)
用UNION-ALL 替换UNION ( 如果有可能的话)
ORACLE内部操作
总是使用索引的第一个列
避免在索引列上使用IS NULL和IS NOT NULL
用IN来替换OR
用UNION替换OR (适用于索引列)
用>=替代>
避免在索引列上使用NOT
自动选择索引
避免在索引列上使用计算
强制索引失效
不明确的索引等级
等式比较和范围比较
多个平等的索引
基础表的选择
索引的操作
用索引提高效率
用EXPLAIN PLAN 分析SQL语句
使用TKPROF 工具来查询SQL性能状态
识别'低效执行'的SQL语句
用EXISTS替换DISTINCT
用表连接替换EXISTS
用NOT EXISTS替代NOT IN
用EXISTS替代IN
使用表的别名(Alias)
通过内部函数提高SQL效率.
减少对表的查询
用Where子句替换HAVING子句
计算记录条数
尽量多使用COMMIT
用TRUNCATE替代DELETE
删除重复记录
整合简单,无关联的数据库访问