2011-02-15 73 views
5

我從Excel中將一些原始數據插入到MS SQL 2005的表中。 其中一些數據格式不正確,即數量colum格式化爲數字12345,而我需要像123.45,所以我使用這個 CAST(TRANSACTION_HISTORY.AMOUNT AS decimal)/100 正確地轉換它。 但是有沒有辦法在insert語句中使用cast?在插入語句中使用轉換

感謝

回答

5

您可以使用CAST在任何一種說法(插入,更新,刪除,選擇),您使用的數據。

Insert into table1 values(CAST(col1 as nvarchar(50))) 
0

我假設您使用鏈接服務器或openquery從excel中獲取數據。您可以在選擇語句中投射。

所以

INSERT INTO YourTable 
SELECT Cast(Transaction_History.Amount AS Decimal)/100 
FROM EXCELLINK...[$Sheet1] 

你做的進口後,您也只需更新表中的所有值

UPDATE YourTable 
SET YourColumn = YourColumn/100