MySQL:最简单,也是最容易犯错的sql问题

原始sql如下:

mysql> select * from gso  WHERE express_generation_sn = 160425135761159  LIMIT 1; 
1 row in set (1.15 sec)

mysql> explain select * from gso  WHERE express_generation_sn = 160425135761159  LIMIT 1;
+----+-------------+----------------+------+-----------------------+------+---------+------+--------+-------------+
| id | select_type | table          | type | possible_keys         | key  | key_len | ref  | rows   | Extra       |
+----+-------------+----------------+------+-----------------------+------+---------+------+--------+-------------+
|  1 | SIMPLE      | gso            | ALL  | express_generation_sn | NULL | NULL    | NULL | 390755 | Using where |
+----+-------------+----------------+------+-----------------------+------+---------+------+--------+-------------+
1 row in set (0.00 sec)
相当简单的sql执行需要1.15s


原因:

mysql> select * from gso  WHERE express_generation_sn = '160425135761159'  LIMIT 1;
1 row in set (0.00 sec)

mysql> explain select * from gso  WHERE express_generation_sn = '160425135761159'  LIMIT 1;
+----+-------------+----------------+------+-----------------------+-----------------------+---------+-------+------+-------------+
| id | select_type | table          | type | possible_keys         | key                   | key_len | ref   | rows | Extra       |
+----+-------------+----------------+------+-----------------------+-----------------------+---------+-------+------+-------------+
|  1 | SIMPLE      | gso            | ref  | express_generation_sn | express_generation_sn | 153     | const |    1 | Using where |
+----+-------------+----------------+------+-----------------------+-----------------------+---------+-------+------+-------------+
1 row in set (0.00 sec)
到这里一眼也就知道拉,express_generation_sn 是varchar类型,所以开发规范很重要!!

也知道不是所有带sn,num的都是数字字段,不能想当然

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值