2010-09-20 64 views
0

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

db结构是旧的,并且具有int和varchar值。我无法改变这一点。

+0

在PostgreSQL中查看正则表达式。 – 2012-10-03 01:24:50

回答

1

为什么使用VARCHAR?你不能合计一个苹果和梨,这是行不通的。您可以使用CAST()进行强制转换,但在检测到无效数据时,PostgreSQL(以及任何其他DBMS)会失败。

SELECT 
    CAST('1' AS int); 

这将失败:

SELECT 
    CAST('apple' AS int); 

使用正确的数据类型。