MySQL CAST 与 CONVERT

Aar*_*ron 17 mysql

假设我有一个 VARCHAR(包含数字数据),我想用它进行简单的计算(向它添加 10)。根据有关 CAST 函数MySQL 文档,我可以使用 CAST 或 CONVERT 来完成此操作:

SELECT (CAST(field1 AS SIGNED)) + 10
FROM myTable;
Run Code Online (Sandbox Code Playgroud)

或者:

SELECT (CONVERT(field1,SIGNED)) + 10
FROM myTable;
Run Code Online (Sandbox Code Playgroud)

从这个意义上说,CAST 和 CONVERT 有什么区别?他们真的完成了同样的事情吗?

gbn*_*gbn 13

是的,CASTCONVERT做同样的事情,只是CONVERT让更多的选项,如更改字符集与USING

  • `cast` 是 SQL 标准的一部分,而 `convert` 不是 (4认同)