0

nvarchar(200)在表中有一个列,其中包含整数(作为字符串)和非整数字符串和符号的混合。例如一些样本数据:-

对不起,我在最初的帖子中输入了 varchar(200),但实际上它是 'nvarchar(200)'

02
0
.../
125
00125
/2009
1000
0002589
000.00125

马拉地语数字字母

我怎样才能订购这个专栏?

4

4 回答 4

0

许多 DBMS 具有CAST()可以将一种数据类型转换为另一种数据类型的功能。

对于 MySQL 看看这个网站

于 2013-01-25T04:52:22.483 回答
0

您可以使用此查询

SELECT CASE
WHEN ISNUMERIC(colName)=1 THEN ROUND(colName, 0) ELSE 0 END AS [colName]
FROM tblName

于 2013-01-25T08:44:13.237 回答
0

您可以使用CAST 和 Convert将字符串类型值转换为 int 类型。但请确保该值应为数字。

select convert(int,'123')

select CAST('123' as int)
于 2013-01-25T06:00:30.437 回答
0

您可以使用CAST将 a 转换为varchar 持有正确数字varchar的给定值。INT

SELECT CAST(varCharCol as Int)

例如

col1 as Varchar(10)

col1 = '100'转换为 INT 将成功

但如果col1 = '100 xyz'在此过程中将不成功。

查看您的字符串,您可能必须使用 number ofLTRIMREPLACE获取数字或使用正则表达式来获取逗号分隔的数字。这也不是很清楚你的原始字符串是什么样子的。

于 2013-01-25T05:06:27.103 回答