本文介绍了使用IF语句比较从MySQL拉取的数字的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
从MySQL中提取2个十进制值并尝试使用非常简单的IF语句:
if subtotal < minval then DO THIS else DO THIS
它总是认为小计较小,即使可能不是。IsNumeric
确认这两个值都是数值。如果我使用minval=19.99
而不是从数据库拉取,它会起作用。
检索minval
的代码如下所示:
Set rscontrol = db.Execute("select * from websitecontrol ")
minval = FormatNumber(rscontrol("minordervalue"))
推荐答案
FormatNumber
是用于格式化要显示的值的函数。它返回格式化字符串。
>>> n = 1.25
>>> WScript.Echo TypeName(n)
Double
>>> WScript.Echo TypeName(FormatNumber(n))
String
切勿使用格式化函数,除非要显示结果。
更改
minval = FormatNumber(rscontrol("minordervalue"))
至
minval = rscontrol("minordervalue")
如果这仍然不起作用,您可以使用CDbl
函数将该值强制为双精度。
minval = CDbl(rscontrol("minordervalue"))
请注意,该函数需要小数点,因为它是在系统的区域设置中配置的。
这篇关于使用IF语句比较从MySQL拉取的数字的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!