列是一个nvarchar (15)
例如,上面的列由数字和字符组成
列包含数据,如第 1 行:60 个单位第 2 行:2个单位第 3 行:100 个单位第 4 行:1000 个单位
我只想将数值放入单独的列中?我该怎么做我试过但我不明白我告诉你我的查询
SELECT CONVERT(INT, column) as abc from table
列是一个nvarchar (15)
例如,上面的列由数字和字符组成
列包含数据,如第 1 行:60 个单位第 2 行:2个单位第 3 行:100 个单位第 4 行:1000 个单位
我只想将数值放入单独的列中?我该怎么做我试过但我不明白我告诉你我的查询
SELECT CONVERT(INT, column) as abc from table
如果您的数据实际上包含units
,那么您可以使用replace
:
select
cast(replace(col, ' units', '') as int) col
from yt
您还可以使用substring
andcharindex
返回单词之前的所有内容:
select cast(substring(col, 1, charindex(' ', col)) as int) col
from yt
如果您可能有没有 的数字值units
,那么您可以使用:
select
case
when charindex(' ', col) > 0
then cast(substring(col, 1, charindex(' ', col)) as int)
else cast(col as int) end col
from yt;