2012-07-12 124 views
2

我有一列数字,并希望用这些数字加上另外的文本“数百万”来填充另一列。所以“20”会变成“2000万”。我如何添加这个?将字符串附加到列

我试图运行SQL查询

UPDATE numbers 
SET values_new=values + ' millions' 

UPDATE numbers 
SET values_new=values + cast (' millions' as nvarchar(max)) 

但都发生了错误。我还能尝试什么?

+1

什么是datatyp e在您尝试更新的列上?什么是错误信息? – Taryn 2012-07-12 15:55:25

+0

#1064 - 你的SQL语法错误;检查与您的MySQL服务器版本相对应的手册,以找到正确的语法以在附近使用.... – user1521280 2012-07-12 16:01:11

+0

数据类型为文本,但我将其更改为varchar以查看它是否会产生差异,但错误消息每次都是相同的如果是数字, – user1521280 2012-07-12 16:01:56

回答

0

尝试铸造values为字符串代替:

SET values_new = cast(values as nvarchar(20)) + ' millions' 
0

如果列值是一个数字类型,你要投它,而不是文本要附加:基于

UPDATE numbers 
SET values_new=cast(values as varchar(5)) + ' millions' 
0

您的评论,该列是varchar然后您将执行以下操作:

UPDATE numbers 
SET values_new= cast(values as varchar(50)) + ' millions'