# 隐式数据类型转换总结

![left](./student-guide/diagram/01-17-1.png)

------------------------------------------------------------

TiDB 的隐式数据类型转换规则和 MySQL 是保持一致的，我们总结下运算（这里运算常见的有等值比较、表连接）时常见的隐式数据类型转换规则：

- 如果其中一个参数是数字而另一个参数是字符串，则将字符串将转换为数字。
- 如果其中一个参数是 TIMESTAMP 或 DATETIME列而另一个参数是常量，则将常量将转换为时间戳。
- 如果其中一个参数是十进制值，则比较取决于另一个参数。如果另一个参数是十进制或整数值，则将参数作为十进制值进行比较，如果另一个参数是浮点值，则作为浮点值进行比较。

这里只是常见的一些规则，更详细的规则请去 MySQL 官网查看。强烈建议，为了避免因为隐式数据类型转换引起的性能问题，请使用相同类型进行运算和检索数据。
