Date$Time


函数名称



测试用列



描述



测试结果



CurrentDate



CurrentDate()



获取系统当天日期



2008-08-05



CurrentTime



CurrentTime()



获取系统当天时间



17:52:31



CurrentTimestamp



CurrentTimestamp()



获取系统当天日期时间



2008-08-05 17:52:31



HoursFromTime



HoursFromTime(’08:01:02’)



获取小时



8



JulianDayFromDate



JulianDayFromDate(‘2008-08-05’)






2454685



MicroSecondsFromTime



MicroSecondsFromTime(‘17:52:31’)



返回一个微妙数



0



MinutesFromTime



MinutesFromTime('14:24:45')



返回一个分钟数



24



MonthDayFromDate



MonthDayFromDate("2008-08-13")



返回当月的第几天



13



DateFromDaysSince



DateFromDaysSince('13',"2008-08-12")



返回当天时间被加后的日期类型



2008-08-25



MonthFromDate



MonthFromDate('2008-09-01')



返回当月的月



9



NextWeekdayFromDate



NextWeekdayFromDate('2008-08-10','Thursday')



传入当月当天日期返回得到传入星期几的下一个日期几



2008-08-14



PreviousWeekdayFromDate



PreviousWeekdayFromDate('2008-08-10','Wednesday')



传入当月当天日期返回得到传入星期几的上一个日期几



2008-08-06



SecondsFromTime



SecondsFromTime('17:23:44')



传入时间返回时间的秒数



44



SecondsSinceFromTimestamp



SecondsSinceFromTimestamp('2008-08-06 10:01:31','2008-08-19 09:12:31')



返回两个日期的比较后得出的秒数



-1.12026e+06 =

-1120260



TimeDate



TimeDate()



获取系统时间以时间,日,月,年显示



14:07:50 06 Aug 2008



TimeFromMidnightSeconds



TimeFromMidnightSeconds('120')



传入秒数获得以计算秒为时间单位的时间



00:02:00



TimestampFromDateTime



TimestampFromDateTime('2008-09-01','07:30:41')



传入日期,时间整合返回Timestamp



2008-09-01 07:30:41



TimestampFromSecondsSince



TimestampFromSecondsSince('120','2008-08-07 11:12:13')



传入秒数,Timestamp后返回将秒数累加到Timestamp类型上



2008-08-07 11:14:13



TimestampFromTimet



TimestampFromTimet('120')



传入秒数返回一个unix上的timestamp类型



1970-01-01 00:02:00



TimetFromTimestamp



TimetFromTimestamp('1970-01-01 00:02:00')



传入timestamp类型返回unix time_t



120



WeekdayFromDate



WeekdayFromDate('2008-08-09','Wednesday')



传入日期和星期几返回传入日期当前星期(星期天排除为当前星期)的天数,向上查询



3



YeardayFromDate



YeardayFromDate('2008-09-09')



传入日期返回传入日期的当天数



253



YearFromDate



YearFromDate('2008-09-09')



传入日期返回年份数



2008



YearweekFromDate



YearweekFromDate('2008-09-09')



传入日期返回传入日期的所在周数



37



IsValid



if IsValid('int32', CUSTOMER) then AsInteger(DSLink2.TXN_CNT) else ''


if IsValid('dfloat',DSLink2.TXN_AMT) then DSLink2.TXN_AMT else ''



传入一个参数和他的匹配类型,如果匹配就输出,不匹配则为空

"date", "decimal",

"dfloat", "sfloat", "int8", "uint8","int16", "uint16", "int32","uint32", "int64", "uint64", "raw","string", "time", "timestamp"."ustring"



123



0000123.



Logicl


函数名称



测试用列



描述



测试结果



BitAnd



BitAnd(235,25)

11101011  ---235

00011001  ---25

00001001  --9




传入两个int型参数,将他们转化为二进制,通过“或”关系将最后参数返回,当为1与0比为0,1与1比为1



9



BitCompress



if BitCompress(0)=0 then 0 else 1



传入的参数只能为1或0,当条件成立返回1



0



BitOr



BitOr (321,123)

101000001  ---321

001111011  ---123

101111011  ---379



传入两个int型参数,将他们转化为二进制,通过“与”关系将最后参数返回,当为1与0比为1,1与1比为1



379



BitXOr



BitXOr(321,123)

101000001  ---321

001111011  ---123

100111010  ---314



传入两个int型参数,将他们转化为二进制,当1与0比为1,1与1比为0



314



Not



Not(1=1)



判断表达式,如果为真返回为0,如果为假返回为1



0



Number


函数名称



测试用列



描述



测试结果



AsDouble



AsDouble(12.123456)



保留4为小数最后一位四舍五入



12.1235



AsFloat



AsFloat(13.654321)



保留4为小数最后一位四舍五入



13.6543



AsInteger



AsInteger(11.23)



传入小数返回整数



11



MantissaFromDecimal



MantissaFromDecimal(15.123456)



取小数尾数



1.23456e+09

1234560000



MantissaFromDFloat



MantissaFromDFloat(16.22222)



取小数尾数



2222



String


函数名称



测试用列



描述



测试结果



AlNum



AlNum('Sting12')



传入的参数如果string类型返回1



1



Alpha



Alpha('String')



传入的参数为必须为string不能带有其他字符,如果有则为0



1



CompactWhiteSpace



CompactWhiteSpace('Str ing'):' ':CompactWhiteSpace('a bc d'):' ':CompactWhiteSpace('A B C D')



将多个字符串类型串联为一个类型



Str ing a bc d A B C D



Compare



Compare('abc','def','L'):' ':Compare('def','abc','R'):' ':Compare('qwer','qwer','R')



比较字符串大小,按照ascII比较方式



-1

1

0



CompareNoCase



CompareNoCase('B','C'):' ':CompareNoCase('a','a')



比较两个字符串是否相等,相等为0,不相等为-1



-1

0



CompareNum



CompareNum('A','B',1):' ':CompareNum('B','B',1):' ':CompareNum('abc','cde',3):' ':CompareNum('abcd','a',4)



比较传入的参数,如果绝对相同为0,传入的arg2包含在传入的arg1中为1,不相等为-1



-1

0

-1

1



Convert



Convert('bd','12', 'abcdefghijk')



Arg1查找的参数,arg2是需要修改为的参数。最后返回修改后的结果



a1c2efghijk



Count



Count('jxj','j')



获取相同字符的合计



2



Dcount



Dcount('jxj','j')



获取相同字符的合计然后再加1



3



DownCase



DownCase('ACRM123ACrm123acRM')



将字符中的大写转化为小写



acrm123acrm123acrm



DQuote



DQuote('abcd':'mnb'):'123'



将两个字符串连接起来用双引包括



"abcdmnb"123



Field



Field('parallel','l',3)



将字符串中的字符串取出来



e



Index



Index('a;lkdfjioquejrlkjasopdifu','j',2)



索引字符串’j’直到发现第2个’j’的时候停止并返回长度



13



Left



Left('abcdefghijk',4)



从左边取4位字符串



abcd



Right



Right('abcdefghijk',4)



从右边取4位字符串



hijk



Len



Len('asdlkfjalsdf')



返回字符串的长度



12



Num



Num(1234)



如果是数字返回为1,非数字返回为0



1



PadString



PadString('abcd','acr',3)



第一个参数为输出参数,第二个为追加参数(只取字符串的第一位),第3个为追加几次



abcdaaa



Soundex



Soundex('longtop')



通过英文发音的比对来获取



L523















Squote



Squote('asdfasdf':'12')



将传入的字符串想通过单引号包括



'asdfasdf12'



Str



Str("A", 20 - Len('asd'))



将传入第一个参数和后面数字做联系,复制第一参数



AAAAAAAAAAAAAAAAA



Space



Space(10 - Len('asdf'))



追加空格



‘      ‘



StripWhiteSpace



StripWhiteSpace('ab e q w e r')



将字符串中所有的空格去掉



abeqwer



Trim



Trim(' askd  ')

Trim('   kk   a  b c  ',' ')

Trim('   kk   a  b c  ',' ','A')

Trim('   kk   a  b c  ',' ','L')

Trim('   kk   a  b c  ',' ','B')

Trim('   kk   a  b c  ',' ','R')

Trim('   kk   a  b c  ',' ','F')

Trim('   kk   a  b c  ',' ','E')

Trim('   kk   a  b c  ',' ','D')



去除左右两边空格

去除多余的空格

去除全部的空格

去除左右的空格

去除左右两边

去左右两边和多余空格

去除左边空格

去除右边空格

去除多余的空格



askd

kk a b c

kkabc

kk   a  b c 

kk   a  b c

kk a b c

kk   a  b c 

   kk   a  b c

kk a b c



TrimB



TrimB('  kkkk  ')



去除右边的空格



  kkkk



TrimF



TrimF('  kkkk  ')



去除左边的空格



kkkk 



TrimLeadingTrailing



TrimLeadingTrailing('  k k k k  ')



去除左右两边空格删除第一和最后的空格



k k k k



UpCase



UpCase('abcd')



将所有小写转换为大写



ABCD






函数名称



测试用列



描述



测试结果



Char



Char(123)



将数字转化为对应的ASCII码



{



DateToString



DateToString('2008-08-01',"%yyyy-%mm-%dd")



将日期转化为字符



2008-08-01



DecimalToDecimal



DecimalToDecimal(13.55)



将decimecl类型转化为decimal类型



0000000000000000000000000013.5500000000



DecimalToDFloat



DecimalToDFloat(13.5678897866854464)



将decimecl类型转化为float类型并四舍五入



13.5679



DecimalToString



DecimalToString(123.567)



将decimecl类型转化为string类型输出



0000000000000000000000000123.5670000000



DFloatToDecimal



DFloatToDecimal(12.5658)



将float转化为decimal类型



0000000000000000000000000012.5658000000



DFloatToStringNoExp



DFloatToStringNoExp(29.10,'2'):' ':DFloatToStringNoExp(29.120,'3'):' ':DFloatToStringNoExp(29.120,'4')



取dfloat的位数并转化为string输出



29

29.12

29.12



Seq



Seq ('A'):' ':Seq('B')



将传入的字符转化为相对应的ASCII数字



65 66



StringToDate



StringToDate('19821114',"%yyyy%mm%dd")



将字符类型的日期转化为日期类型输出



1982-11-14



StringToDecimal



StringToDecimal('12.345','ceil'):' ':StringToDecimal('12.345','floor')



得到最大的。

得到最小的。



0000000000000000000000000012.3450000000 

000



StringToTime



StringToTime('081114',"%hh%nn%ss")



将字符类型的时间转化为时间类型



08:11:14



StringToTimestamp



StringToTimestamp('19261212 001245',"%yyyy%mm%dd %hh%nn%ss")



将字符的timestamp类型转化为timestamp类型



1926-12-12 00:12:45



TimestampToDate



TimestampToDate(CurrentTimestamp())



将timestamp转化为日期类型



2008-08-12



TimestampToString



TimestampToString(CurrentTimestamp(),"%yyyy/%mm/%dd %hh/%nn/%ss")



将日期类型按照返回的格式转化为字符类型



2008/08/12 15/18/18



TimestampToTime



TimestampToTime(CurrentTimestamp())



将timestamp转化为时间类型



15:18:18



TimeToString



TimeToString(CurrentTime(),"%hh-%nn-%ss")



将时间类型按照返回的格式转化为字符类型



15-18-18



StringToUString



StringToUString('Ustring')



将string类型转化为Ustring类型(Char, varchar, longvarchar)



Ustring



UStringToString



UStringToString('string')



将Ustring(Char, varchar, longvarchar)类型转化为string类型



string