楼主: bolun761

[精华] 巧用函数索引优化一例

[复制链接]
论坛徽章:
12
授权会员
日期:2007-07-11 20:34:40鲜花蛋
日期:2011-11-24 21:31:102010新春纪念徽章
日期:2010-03-01 11:19:07生肖徽章2007版:猪
日期:2009-12-09 20:13:20生肖徽章2007版:兔
日期:2009-11-24 12:05:57ITPUB8周年纪念徽章
日期:2009-09-27 10:21:20生肖徽章2007版:鼠
日期:2009-09-10 15:41:532009新春纪念徽章
日期:2009-01-04 14:52:28生肖徽章2007版:鸡
日期:2008-12-01 16:52:42奥运会纪念徽章:花样游泳
日期:2008-10-24 13:28:54
11#
 楼主| 发表于 2008-9-13 10:16 | 只看该作者
感谢 Yong Huang 指正^_^。去掉triggerflag='1' 更优化。

使用道具 举报

回复
论坛徽章:
38
2010新春纪念徽章
日期:2010-01-04 08:33:082012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:252012新春纪念徽章
日期:2012-02-13 15:12:25版主2段
日期:2012-05-15 15:24:11优秀写手
日期:2013-12-18 09:29:08马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14
12#
发表于 2008-9-13 23:09 | 只看该作者
思路很不错啊。
可以在结合TOM《9i&10g编程艺术》中索引那一章的“只对部分行建立索引”一起看。

使用道具 举报

回复
论坛徽章:
14
授权会员
日期:2007-10-28 17:13:06祖国60周年纪念徽章
日期:2009-10-09 08:28:00生肖徽章2007版:羊
日期:2009-09-10 11:27:42生肖徽章2007版:鼠
日期:2009-03-10 21:32:40生肖徽章2007版:马
日期:2009-03-10 21:28:53生肖徽章2007版:牛
日期:2009-03-10 21:19:32生肖徽章2007版:羊
日期:2009-03-10 21:16:04奥运会纪念徽章:铁人三项
日期:2008-10-24 13:27:21生肖徽章2007版:鸡
日期:2008-10-18 21:30:18数据库板块每日发贴之星
日期:2008-10-13 01:02:26
13#
发表于 2008-9-14 08:30 | 只看该作者
很好的一个想法,学习了。

使用道具 举报

回复
论坛徽章:
129
蓝锆石
日期:2008-08-23 16:25:58萤石
日期:2008-02-26 15:38:51祖母绿
日期:2008-08-18 16:12:54海蓝宝石
日期:2008-02-23 15:06:23紫水晶
日期:2008-08-22 14:58:26红宝石
日期:2008-07-26 15:02:37九尾狐狸
日期:2008-09-16 09:24:50红孩儿
日期:2008-10-26 12:20:09紫蜘蛛
日期:2008-11-19 08:33:41玉兔
日期:2009-02-02 09:09:53
14#
发表于 2008-9-15 09:39 | 只看该作者
不错,支持

使用道具 举报

回复
招聘 : 数据库管理员
论坛徽章:
20
祖国60周年纪念徽章
日期:2009-10-09 08:28:00数据库板块每日发贴之星
日期:2011-02-20 01:01:01ITPUB季度 技术新星
日期:2011-04-02 10:31:09ITPUB十周年纪念徽章
日期:2011-11-01 16:24:042012新春纪念徽章
日期:2012-01-04 11:54:26玉石琵琶
日期:2012-02-21 15:04:38最佳人气徽章
日期:2012-03-13 17:39:18ITPUB 11周年纪念徽章
日期:2012-10-09 18:09:192013年新春福章
日期:2013-02-25 14:51:242011新春纪念徽章
日期:2011-02-18 11:43:33
15#
发表于 2008-9-24 14:02 | 只看该作者
经典。。。。。。

使用道具 举报

回复
论坛徽章:
41
ITPUB元老
日期:2007-04-18 10:10:372012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:23迷宫蛋
日期:2012-05-09 13:09:18双黄蛋
日期:2013-01-21 12:55:59马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14
16#
发表于 2008-11-24 13:18 | 只看该作者
引:
只有小于5%的数据是starttime小于当前时间而且triggerflag为1的, 根据业务特点建立函数索引。

我们基本上是禁止建立函数索引的,函数索引意味着这个索引很难被别的sql重用。
这两个字段根据数据分布建个联合索引,通过联合索引过滤后,返回的数据应该就是你要的数据。

[ 本帖最后由 WESTLIFE_XU 于 2008-11-24 13:29 编辑 ]

使用道具 举报

回复
招聘 : Java研发
论坛徽章:
71
马上加薪
日期:2014-02-19 11:55:14蜘蛛蛋
日期:2012-12-26 18:16:01茶鸡蛋
日期:2012-11-16 08:12:48ITPUB 11周年纪念徽章
日期:2012-10-09 18:05:07奥运会纪念徽章:网球
日期:2012-08-23 14:58:08奥运会纪念徽章:沙滩排球
日期:2012-07-19 17:28:14版主2段
日期:2012-07-07 02:21:02咸鸭蛋
日期:2012-03-23 18:17:482012新春纪念徽章
日期:2012-02-13 15:13:512012新春纪念徽章
日期:2012-02-13 15:13:51
17#
发表于 2008-11-24 13:39 | 只看该作者
原帖由 WESTLIFE_XU 于 2008-11-24 13:18 发表
引:
只有小于5%的数据是starttime小于当前时间而且triggerflag为1的, 根据业务特点建立函数索引。

我们基本上是禁止建立函数索引的,函数索引意味着这个索引很难被别的sql重用。
这两个字段根据数据分布建个联合索引,通过联合索引过滤后,返回的数据应该就是你要的数据。

楼主可以试试
82/400W
估计逻辑读也高不到哪儿去

使用道具 举报

回复
论坛徽章:
41
ITPUB元老
日期:2007-04-18 10:10:372012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:232012新春纪念徽章
日期:2012-02-13 15:09:23迷宫蛋
日期:2012-05-09 13:09:18双黄蛋
日期:2013-01-21 12:55:59马上有车
日期:2014-02-19 11:55:14马上有房
日期:2014-02-19 11:55:14
18#
发表于 2008-11-24 13:53 | 只看该作者
原帖由 anlinew 于 2008-11-24 13:39 发表

楼主可以试试
82/400W
估计逻辑读也高不到哪儿去



是的。

做好了可能不会超过100个,82行记录回表最多需要82块+读索引块。。。

使用道具 举报

回复
招聘 : 数据库管理员
论坛徽章:
9
生肖徽章2007版:牛
日期:2009-03-10 21:26:492010新春纪念徽章
日期:2010-01-04 08:33:082010年世界杯参赛球队:葡萄牙
日期:2010-02-22 14:35:242010新春纪念徽章
日期:2010-03-01 11:19:092010广州亚运会纪念徽章:射击
日期:2010-09-08 23:42:12ITPUB9周年纪念徽章
日期:2010-10-08 09:31:212010广州亚运会纪念徽章:拳击
日期:2010-10-30 00:46:582011新春纪念徽章
日期:2011-02-18 11:43:322011新春纪念徽章
日期:2011-03-01 08:49:39
19#
发表于 2009-11-11 10:03 | 只看该作者
在 《9i&10g编程艺术》 里面看过一个使用函数索引剔除大部分记录的例子,与这个相互印证,有更深刻的体会。

使用道具 举报

回复
论坛徽章:
14
奥运会纪念徽章:拳击
日期:2008-04-24 10:00:15CTO参与奖
日期:2009-02-12 11:45:482012新春纪念徽章
日期:2012-02-07 09:59:35ITPUB季度 技术新星
日期:2012-02-16 14:53:16鲜花蛋
日期:2012-03-19 18:10:462013年新春福章
日期:2013-02-25 14:51:242014年新春福章
日期:2014-02-18 16:41:11马上有车
日期:2014-02-18 16:41:11
20#
发表于 2009-11-12 13:52 | 只看该作者
学习了

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表