我从Excel中将一些原始数据插入到MS SQL 2005的表中。 其中一些数据格式不正确,即数量colum格式化为数字12345,而我需要像123.45,所以我使用这个 CAST(TRANSACTION_HISTORY.AMOUNT AS decimal)/100
正确地转换它。 但是有没有办法在insert语句中使用cast?在插入语句中使用转换
感谢
我从Excel中将一些原始数据插入到MS SQL 2005的表中。 其中一些数据格式不正确,即数量colum格式化为数字12345,而我需要像123.45,所以我使用这个 CAST(TRANSACTION_HISTORY.AMOUNT AS decimal)/100
正确地转换它。 但是有没有办法在insert语句中使用cast?在插入语句中使用转换
感谢
您可以使用CAST在任何一种说法(插入,更新,删除,选择),您使用的数据。
Insert into table1 values(CAST(col1 as nvarchar(50)))
我假设您使用链接服务器或openquery从excel中获取数据。您可以在选择语句中投射。
所以
INSERT INTO YourTable
SELECT Cast(Transaction_History.Amount AS Decimal)/100
FROM EXCELLINK...[$Sheet1]
你做的进口后,您也只需更新表中的所有值
UPDATE YourTable
SET YourColumn = YourColumn/100