列は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
デモで SQL Fiddle を参照してください
substring
andを使用しcharindex
て、単語の前のすべてを返すこともできます。
select cast(substring(col, 1, charindex(' ', col)) as int) col
from yt
SQL Fiddle with Demoを参照してください。
のない数値がある場合は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;
デモで SQL Fiddle を参照してください