http://www.slideshare.net/mysqlops/mysql-9838563 同数据类型的列值比较 原则:数字对数字,字符对字符 数值列与字符类型比较 同时转换为又精度 进行对比 字符列与数字类型比较 字符列整列转数值 www.2cto.com 不会使" name="description" />

MySQL数据库开发的三十六条军规应用(一)

来源:未知 责任编辑:责任编辑 发表时间:2013-11-26 22:15 点击:

slides地址:mysqlops/mysql-9838563">http://www.slideshare.net/mysqlops/mysql-9838563
同数据类型的列值比较
原则:数字对数字,字符对字符
数值列与字符类型比较
• 同时转换为又精度
• 进行对比
字符列与数字类型比较
• 字符列整列转数值 www.2cto.com
• 不会使用索引查询
slides 43页给出的实例为字符列与数值类型的比较,与同类型比较相比,前者耗时约为后者的28倍。
我自己测试的结果如下:
mysql> SELECT SUM(capital) FROM lend_inoutdetail WHERE rec_type='1' AND user_id=
319;
+--------------+
| SUM(capital) |
+--------------+
|   11942.5300 |
+--------------+
1 row in set (1.08 sec)

mysql> SELECT SUM(capital) FROM lend_inoutdetail WHERE rec_type=1 AND user_id=31
9;
+--------------+
| SUM(capital) |
+--------------+
|   11942.5300 |
+--------------+
1 row in set (5.30 sec)

mysql>
耗时约相差4倍,我的数据库中数据量是比较少的,应该是数据量越大耗时相差倍数就越多。
回头查看了项目的代码,发现有许多的字符列用数字比较,需要修正并在以后的代码中谨记此条军规

 摘自 才相遇反驳

    发表评论
    请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
    用户名: 验证码:点击我更换图片
    最新评论 更多>>

    推荐热点

    • mysql-mmm
    • mysqldump命令——MySQL数据库备份还原
    • Oracle数据导入MySQL的快捷工具:MySQL Migration Toolkit
    • 简简单单储存过程——循环一个select结果集
    • MySQL数据库十大优化技巧
    • Mysql安装笔记
    • Mysql主主复制架构配置
    • Mysql的Procedure 参数为NULL问题分析
    • MySQL Stmt预处理提高效率问题的小研究
    网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
    Copyright © 2008-2015 计算机技术学习交流网. 版权所有

    豫ICP备11007008号-1