我知道使用 UNIX_TIMESTAMP() 会导致 MySQL 不缓存查询,这是合理的。但是,如果我使用 UNIX_TIMESTAMP() 来转换 DATETIME 列,它还会错过缓存吗?
问问题
241 次
如果您将值或列作为参数传递给UNIX_TIMESTAMP()
.
如果您不知道,对表的任何更改都会导致缓存被清除,这也是值得知道的。因此,如果您查询的表经常更改,那么您可能不会从查询缓存中获得太多好处。
从 5.5手册:
如果查询包含下表中显示的任何函数,则无法缓存该查询。
- 没有参数的 UNIX_TIMESTAMP()