功能实现的过程中,用到最多的函数就是Trim函数了,其实这个函数在我们敲第一版机房收费系统的时候就接触到了,然而在本次重构的时候,我没少吃它的亏,最直接的就是查出空记录,导致程序无法按照预期那样走。比如明明卡里余额大于最低标准,却提示余额不足,原因是没有用trim,余额是111,最低标准是3 ,所以比较的时候就用了首位比较,解决办法还可以前边加上val。
下面就来说说我在重构的时候印象最深的三个函数:
移除字符串两侧的空白字符或其他预定义字符。函数执行成功时返回删除了string字符串首部和尾部空格的字符串,发生错误时返回空字符串("")。如果任何参数的值为NULL,Trim() 函数返回NULL。
SQL中的TRIM函数是用来移除掉一个字串中的字头或字尾。最常见的用途是移除字首或字尾的空白。这个函数在不同的资料库中有不同的名称:
MySQL: TRIM(),RTRIM(),LTRIM()
Oracle: RTRIM(),LTRIM()
SQL Server: RTRIM(),LTRIM()
各种 trim 函数的语法如下:
LTRIM(字串):将字串左边的空格移除。
RTRIM(字串): 将字串右边的空格移除。
TRIM(字串): 将字串首尾两端的空格移除,作用等于RTRIM和LTRIM两个函数共同的结果。
ALLTRIM(字串):将字串左右边两边的空格移除。
实例
例1:
SELECT TRIM(' Sample ');
结果:
'Sample'
例2:
SELECT LTRIM(' Sample ');
结果:
'Sample '
例3:
SELECT RTRIM(' Sample ');
结果:
' Sample'
搞定了下机,可是算出来的数带着很多小数位
Round函数的语法: round(number,digits)
参数: number,要四舍五入的数,digits是要小数点后保留的位数
如果 num_digits 大于 0,则四舍五入到指定的小数位。
如果 num_digits 等于 0,则四舍五入到最接近的整数。
如果 num_digits 小于 0,则在小数点左侧进行四舍五入。
Mid函数的详细定义如下:
Mid(text,start_num,num_chars)
参数:
text:字符串表达式,从中返回字符。如果 text 包含 Null,则返回 Null。
start_num:text 中被提取的字符部分的开始位置。如果 start 超过了 text 中字符的数目,Mid 将返回零长度
num_chars:要返回的字符数。如果省略或num_chars 超过文本的字符数(包括 start 处的字符),将返回字符串中从 start_num到字符串结束的所有字符。
在代码中用Mid函数进行截取即可:
<span style="font-family:KaiTi_GB2312;font-size:18px;"> '使用mid函数进行选取,,由于显示日期方式用的是Format(now, "yyyy-MM-dd") '故算上-,选择10个字符,如下书写: DgvTeaOnduty.Rows(i).Cells(2).Value() = Mid(TeaList(i).LoginDate, 1, 10) </span>
机房重估系列博客总结中,未完待续……