程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL數據庫開發的三十六條軍規應用(一)

MySQL數據庫開發的三十六條軍規應用(一)

編輯:MySQL綜合教程

slides地址: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倍,我的數據庫中數據量是比較少的,應該是數據量越大耗時相差倍數就越多。
回頭查看了項目的代碼,發現有許多的字符列用數字比較,需要修正並在以後的代碼中謹記此條軍規

 摘自 才相遇反駁

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved