SELECT CONVERT(varchar(100), CAST(@testFloat AS decimal(38,2)))
SELECT STR(@testFloat, 38, 2)
從Excel中導入到sql2000,有一列“聯系方式”變成了float類型,我想轉換成nvarchar類型,用下面的語句
select convert(nvarchar(30),convert(int,聯系方式)) from employee
go
//數據溢出,不行!
select convert(nvarchar(30),convert(decimal(11,0),聯系方式)) from employee
go
//數據轉換成功!
SELECT CONVERT(nvarchar(100), CAST(聯系方式 AS decimal(11,0))) from employee
go
//數據轉換成功!
SELECT STR(聯系方式, 11, 0)from employee
go
//數據轉換成功!
總結,float---decimal----nvarchar
convert
cast
str
關於SQL SERVER中的FLOAT轉換為VARCHAR
一個FLOAT型的字段,要轉換為VARCHAR,可是小數點後面的都自動被刪去了。。。後查得可以通過如下轉換獲得:
SELECT CAST(CAST(字段 AS DECIMAL(20,7)) AS VARCHAR(20)) FROM 要查的表
或者
SELECT CONVERT(VARCHAR(20),CONVERT(DECIMAL(20,7),字段)) FROM 要查的表