Mysql Postgresql cast

Mysql Postgresql cast,mysql,postgresql,casting,Mysql,Postgresql,Casting,我有一个列(mysql中的varchar和postgresql中变化的字符)。 我需要在列上应用sum,并且我需要一个适用于这两者的cast语法 db结构很旧,同时具有int和varchar值。我不能改变这一点。为什么要使用VARCHAR?你不能把一个苹果和一个梨相加,那是行不通的。您可以使用CAST()进行强制转换,但当检测到无效数据时,在PostgreSQL(以及任何其他DBMS)上该操作将失败 SELECT CAST('1' AS int); 这将失败: SELECT CAST(

我有一个列(mysql中的varchar和postgresql中变化的字符)。 我需要在列上应用sum,并且我需要一个适用于这两者的cast语法


db结构很旧,同时具有int和varchar值。我不能改变这一点。

为什么要使用VARCHAR?你不能把一个苹果和一个梨相加,那是行不通的。您可以使用CAST()进行强制转换,但当检测到无效数据时,在PostgreSQL(以及任何其他DBMS)上该操作将失败

SELECT
  CAST('1' AS int);
这将失败:

SELECT
  CAST('apple' AS int);

使用正确的数据类型。

查看PostgreSQL中的正则表达式。