简单问题在线等~

hj3793 2007-03-13 04:07:59
Declare @PN decimal
Set @PN = 1.6
Select cast(@PN as varchar)

------------------

怎么改才能输出结果是1.6,并且是字符型的?
...全文
176 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
hj3793 2007-03-13
  • 打赏
  • 举报
回复
Create Function ClearEnd
(
@Str varchar(20)
)
/*
该函数去掉字符串尾部的 0
例如 ClearEnd('2.000') 为 2
ClearEnd('2.010') 为 2.01
*/
Returns varchar(20)
As
Begin
Declare @Len int
Set @Len = Len(@Str)
while(@Len > 0)
Begin
if(Right(@Str,1) = '0')
Set @Str = Left(@Str,Len(@Str)-1)
else
break
End
if(Right(@Str,1) = '.')
Set @Str = Left(@Str,Len(@Str)-1)
return @Str
End
-----------------------------------
嘿嘿,结合一起用就好了,结帖
hj3793 2007-03-13
  • 打赏
  • 举报
回复
谢谢楼上的,等我写完去掉尾部为0的函数后马上结帖
paoluo 2007-03-13
  • 打赏
  • 举报
回复
Declare @PN2 decimal
Set @PN2 = 1.6
Select @PN2

Declare @PN1 decimal(10, 1)
Set @PN1 = 1.6
Select cast(@PN1 as varchar)
--Result
/*
2

1.6
*/
hj3793 2007-03-13
  • 打赏
  • 举报
回复
谢谢,我测试一下
paoluo 2007-03-13
  • 打赏
  • 举报
回复
問題出在你的第一句上

Declare @PN decimal
Set @PN = 1.6
Select @PN
chuifengde 2007-03-13
  • 打赏
  • 举报
回复
Declare @PN decimal(10,1)
Set @PN = 1.6
select @pn
Select str(@PN,10,1)
paoluo 2007-03-13
  • 打赏
  • 举报
回复
Declare @PN decimal(10, 1)
Set @PN = 1.6
Select cast(@PN as varchar)

34,588

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧