回 帖 发 新 帖 刷新版面

主题:[求助]如何保留小数点后面的位数

各位大侠帮帮忙啊,菜鸟先谢过各位了,呵呵。

    问题如下,有一个dbf表,有三列,A列是数值型(其中有小数点),B是字符型,C列是字符型的。现在需要将C列用 A+B替换。

A列中的小数位数都是三位。如 20.000,19.150,20.001,21.100,30.010等。

如果用replace all C with ALLTRIM(STR(A))+ALLTRIM(B)这个命令,只能取A的整数。

不知道哪位大侠能否给指点一下,如何才能在替换过程中达到如下的目的:

整数的保留整数,一位小数的保留一位小数,两位小数的保留两位呢?
即结果是20,19.15,20.001,21.1,30.01


 多谢多谢,呵呵。在线等啊。

回复列表 (共4个回复)

沙发

[size=3]
replace all C with ALLTRIM(iif(a-round(a+0.005,2)+0.01=0,iif(a-round(a+0.05,1)+0.1=0,iif(a-round(a+0.5,0)+1=0,str(a,10,0),str(a,10,1)),str(a,10,2)),str(a,10,3)))+ALLTRIM(B)

看看是不是在线等,能等多久?





[/size]

板凳

呵呵,一直在线等着呢。多谢多谢。
我先试试看,呵呵。

3 楼


吼吼,太好用啦,省了很多麻烦事,哈哈,感谢大侠无私的帮助,十分感谢,呵呵。

4 楼

str(要转换的数字,转换后的字符长度,转换后保留的小数点位数)

我来回复

您尚未登录,请登录后再回复。点此登录或注册