1

在 user_id 为 INT 的表上

为什么是:

SELECT * FROM tableName where user_id = 63

推荐而不是

SELECT * FROM tableName where user_id = '63'
4

1 回答 1

2

在某些情况下,至少在以前的 mysql 版本中,有时会发生 mysql 将表达式的左侧部分(列)转换为字符串,而不是将右侧转换为整数。

这会导致意外的全扫描,而不是使用索引。

我什至没有提到这毫无意义。

于 2012-12-17T02:12:06.230 回答