使用sql查询将string转换为int
如何使用SQL Server 2005上的SQL查询将string转换为整数?
您可以使用CAST或CONVERT :
SELECT CAST(MyVarcharCol AS INT) FROM Table SELECT CONVERT(INT, MyVarcharCol) FROM Table
另外请注意,当从数字string,即'56.72'
为INT时,您可能会遇到SQL错误。
Conversion failed when converting the varchar value '56.72' to data type int.
为了解决这个问题,只做两个转换如下:
STRING – > NUMERIC – > INT
要么
SELECT CAST(CAST (MyVarcharCol AS NUMERIC(19,4)) AS INT)
将TableA中的数据复制到TableB时,转换是隐含的,所以你不需要第二次转换(如果你快乐的向下舍入到最近的INT):
INSERT INTO TableB (MyIntCol) SELECT CAST(MyVarcharCol AS NUMERIC(19,4)) as [MyIntCol] FROM TableA