我在我的工作场所使用 MySQL 5.1 版。
我my_cloumn char(10)
在my_table
.
我最近发现一个过程需要更长的时间,负责这个的 SQL 如下:
SELECT * FROM my_table WHERE my_column = 12345
,这可能需要大约 3 分钟的运行时间。
现在,以这种方式在搜索字符串上编辑和使用引号
SELECT * FROM my_table WHERE my_column = '12345'
在几微秒内检索记录。
我无权(直接或间接)更改代码以通过引号传递查询(通过直接 sql 或在 PDO 中指定正确的数据类型),并且当前可能无法在用户访问时更改列使用数据库。我最需要的是如何解释上述差异。
为什么有引号而不是没有引号会更快?
mysql ×1