先将nvarchar转换成decimal,再转换成float型就行了,例如:
declare @vnum varchar(20)
declare @fnum float
--set @fnum=CONVERT(decimal(18,2),'12.34567')--nvarchar转float
--set @vnum=CONVERT(varchar(20),12.34567)+'%'--float转nvarchar
set @fnum=CAST('12.3452145' AS DECIMAL(20,2))
set @vnum=CAST(12.3452145 AS varchar(20))+'%'
print @fnum--12.35
print @vnum
代码如下:
CREATE proc pro_SelSectionNews(@sectionName nvarchar(50),@Num int)as begin
declare @sql nvarchar(500) set @sql='SELECT * top '+rtrim(@Num)+' FROM News WHERE AdminUserName=SELECT sectionID FROM section WHERE sectionName='''+ @sectionName + ''''
print @sql exec (@sql)
end