分类

链接

2025 年 8 月
 123
45678910
11121314151617
18192021222324
25262728293031

近期文章

热门标签

新人福利,免费薅羊毛

SQL优化经验总结6

低效: (索引失效) SELECT … FROM DEPARTMENT WHERE DEPT_CODE IS NOT NULL; 高效: (索引有效)  SELECT … FROM DEPARTMENT WHERE DEPT_CODE >=0; (27) 总是使用索引的第一个列: 如果索引是建立在多个列上, 只有在它的第一个列(leading column)被where子句引用时,优化器才会选择使用该索引. 这也是一条简单而重要的规则,当仅引用索引的第二个列时,优化器使用了全表扫描而忽略了索引 28) 用UNION-ALL 替换UNION ( 如果有可能的话): 当SQ...

SQL Server 暂无评论 阅读(1,959)

SQL优化经验总结5

高效: SELECT LOC_ID , LOC_DESC , REGIONFROM LOCATIONWHERE LOC_ID = 10UNIONSELECT LOC_ID , LOC_DESC , REGIONFROM LOCATIONWHERE REGION = “MELBOURNE”低效: SELECT LOC_ID , LOC_DESC , REGIONFROM LOCATIONWHERE LOC_ID = 10 OR REGION = “MELBOURNE”如果你坚持要用OR, 那就需要返回记录最少的索引列写在最前面.(25) 用IN来替换OR这是一条简单易记的规则,但是实际的执行效果还须检验,在ORACLE8i下,两者的执行路径似乎是相同的.低效: SELECT…. FROM...

SQL Server 暂无评论 阅读(2,166)

SQL优化经验总结4

19) sql语句用大写的;因为oracle总是先解析sql语句,把小写的字母转换成大写的再执行(20) 在java代码中尽量少用连接符“+”连接字符串! (21) 避免在索引列上使用NOT 通常, 我们要避免在索引列上使用NOT, NOT会产生在和在索引列上使用函数相同的影响. 当ORACLE”遇到”NOT,他就会停止使用索引转而执行全表扫描. (22) 避免在索引列上使用计算. WHERE子句中,如果索引列是函数的一部分.优化器将不使用索引而使用全表扫描. 举例: 低效:  SELECT … FROM DEP...

SQL Server 暂无评论 阅读(1,935)

SQL优化经验总结3

例子:(高效)SELECT * FROM EMP (基础表) WHERE EMPNO > 0 AND EXISTS (SELECT ‘X' FROM DEPT WHERE DEPT.DEPTNO = EMP.DEPTNO AND LOC = ‘MELB') (低效)SELECT * FROM EMP (基础表) WHERE EMPNO > 0 AND DEPTNO IN(SELECT DEPTNO FROM DEPT WHERE LOC = ‘MELB') (16) 识别'低效执行'的SQL语句: 虽然目前各种关于SQL优化的图形化工具层出不穷,但是写出自己的SQL工具来解决问题始终是一个最好的方法:  SELECT EXECUTIONS , DISK_READS, BUFFER_GETS,ROUND((BUFFER...

SQL Server 暂无评论 阅读(1,831)

SQL优化经验总结2

(10) 尽量多使用COMMIT:只要有可能,在程序中尽量多使用COMMIT, 这样程序的性能得到提高,需求也会因为COMMIT所释放的资源而减少: COMMIT所释放的资源: a. 回滚段上用于恢复数据的信息. b. 被程序语句获得的锁 c. redo log buffer 中的空间 d. ORACLE为管理上述3种资源中的内部花费 (11) 用Where子句替换HAVING子句: 避免使用HAVING子句, HAVING 只会在检索出所有记录之后才对结果集进行过滤. 这个处理需要排序,总计等操作. 如果能通过WHERE子句限制记录的数目...

SQL Server 暂无评论 阅读(1,955)

SQL优化 经验总结1

我们要做到不但会写SQL,还要做到写出性能优良的SQL,以下为笔者学习、摘录、并汇总部分资料与大家分享!(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE 的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他表所引用的表.(2) WHERE子句中的连接顺序.:OR...

MySQL, Oracle, SQL Server 暂无评论 阅读(2,061)

六道硅谷工程师变态面试题

北京时间 7 月 23 日消息,据国外媒体报道,,像苹果、谷歌、Facebook 这样的硅谷的著名科技公司在招聘的时候有着异常严格的选拔程序。在面试的时候经常会问一些平时很少会遇到的问题来测试应聘者的逻辑思维能力,笔者从多家公 司搜集了一些最新的面试问题。如果读者想准备参加谷歌或者苹果这种公司的面试,不妨用这些题练练手,看看自己是否具备这些公司所要求的能力。这些问题很可 能以别的形式在招聘过程中出现。记住,要独立完成哦!你准备好了吗? 1. 这是来自 Adobe 公司一道题目:一辆加满油的摩托...

News 暂无评论 阅读(1,988)

各式各样的变态验证码

还记得以前那篇《超强验证码》?其实这个世界变态的验证码还有很多,下面是一个列表向像展示了各种稀奇古怪的验证码。不过本文并不单单只是收集这验证码,前面的比较恶搞,后面的会向你展示什么是有 accessibility 验证码。完全看不清楚的 这是人类的字符吗?  图案中的字母是什么?  这也够奇葩的了。  看得清但令人抓狂的        数学公式的 如果你填对了,你是人类吗?      智力题  ...

News 暂无评论 阅读(4,100)

海南环球小姐三甲更丑 网友戏言看不懂她们的美

在重庆“国际小姐”前三名和“环球比基尼小姐”山 东前三名被网友疯狂吐槽之后,前天“环球小姐”海南赛区冠亚军出炉,“三美”浓妆艳抹的造型立刻遭到网友围观,并与重庆、山东的选美选手进行比较。而十之 八九的网友吐槽:“接连看了几次选美的结果,发现真的跟不上现代审美的标准了。”看看网友这些原生态的评论,着实可见网友“怨言”之深。@三色娱头煲:2012年“环球小姐”海南赛区的冠亚军,看来审美大潮真的变了?@华西生活周报:我承认我看不懂她们的美丽……@周裕福:天呐,口味变了,世界变化真快!重庆小姐得救了...

News 暂无评论 阅读(1,765)

向表中一列插入1-100的连续数

求助:向表中一列插入1-100的连续数table A 中有BH字段(INT),怎么连续给BH赋值1-100,象下面的一样BH ------------------------------------------------12...100根据常规的方法,我们会想到使用While来实现以上的功能。如,一朋友所写的这样:CREATE TABLE TestTable(BH INT)GOSET NOCOUNT ONGODECLARE @MyCounter INTSET @MyCounter = 1WHILE (@MyCounter < 101)BEGININSERT INTO TestTable VALUES(@MyCounter)SET @MyCounter = @MyCounter + 1ENDGOSET NOCOUNT OFFGOse...

SQL Server 暂无评论 阅读(3,360)