以前做的时候,给表建索引,是为了查询方便高效,现在使用存储过程更新数据库表,同事说更新速度比较慢,要我给表建个索引,问下各位,给表建个索引,能提高更新速度吗?
解决方案 »
- 验证代理 CUC-LLZ\snapshot_agent 的身份时出错
- 求一个sql语句(或存储过程),关于分组与排序
- mysql数据库转移服务器后乱码
- mysql中 ,数据表以及字段 使用什么编码,最节省储存空间?
- 当家的你在哪~~~~~~~~~
- 我使用的是mysql4.1,但里面没有winmysqladmin这个工具啊,怎么回事?是不是省略了?感谢
- 刚学mysql,help! mysqldump问题!
- 使用mysqlimport出错
- 外键与修改表结构的问题。
- MySQL安装的第一步就异常了,或者还是说没到第一步就出问题了,求大佬解决
- 恢复mysql下data目录中的数据库
- postgresql跨库触发器问题
SET @sql = CONCAT("update ", tb_name,
" set alarm_level=?,alarm_value_max=?,alarm_value_min=?,alarm_value_avg=?,
file_name=?,endtime=?,outage_num=?,periodcount=? where timestamp=? and srcip=?
and src_port=? and dstip=? and dst_port=? and alarm_type=?" );
这是更新语句。
当然你可以建一个 (timestamp,srcip,src_port,dstip,dst_port,alarm_type) 的index
比如表示性别的字段,男男女女的,可选性很差!
如果是主键,没有重复的,那意味着具有很好的可选性!如果上边的where后的字段有主键的话,那没必要建立什么索引了!
以上是两个比较极端的例子,所以,楼主建立索引的时候,应当以这两个极端为范围,选择最合适的字段建立索引!
http://www.mysqlperformanceblog.com/2009/09/12/3-ways-mysql-uses-indexes/#more-1097
mysql使用索引的三种情况
二叉树查找学习下数据结构就知道索引为什么快了