Basic操作符:
数学运算符:+, -, *, /
关系操作符:=, <,
>, <=, =>
逻辑操作符:And, Not, Or
连接操作符: ":" --"The
employee's name is" : lname : "," : fname
截取字符串:String类型有这个属性,直接在字符串后面加[],标明起始,即可截取字符串
字符数组,从第一个开始,而不是从"0"开始。"String[star,
length]"
"APPL3245"[1,4] --> "APPL"
"APPL3245"[5,2] --> "32"
IF操作符:
方法I: variable = If condition Then
expression Else expression
If Column1 >
100 Then "A" Else "B"
方法II:If condition Else statement
If condition
Else
statements
End
方法III:If condition Then statement
If condition
Then
statements
End
方法IV:If condition Then statements [Else
statements]
If condition
Then statements
End
[Else statements
End]
注释
以REM * ! $* 开头的为注释
系统变量:
1、@Date,
@Time -->
Jobs开始运行的日期和时间,年、月、日是从日期函数中获得的。
2、@InRowNum, @OutRowNum
-->
导入的记录数量,导出的记录数量。
3、@LogName
--> 登陆的用户名。
4、@Null -->
返回空值。
5、@True, @False
--> 返回布尔值。
@True = 1
@False = 0
6、@Who
-->
获得当前工程的名字。
使用Iconv和Oconv函数转换日期
使用Iconv来将一个字符串的日期转换成为一个国际的数字,是天数。
以1967年12月31日作为基础点,那一点在DataStage中是"0"。
使用Oconv来将一个日期的天数,转换成为一个具有格式的字符串。
使用"D"字的转换代码,使用日期格式来进行显示。
"D4-MDY[2,2,4]":
1、D
表示日期的转换代码。
2、4
表示年份的位数。
3、-
表示采用"-"分隔符。
4、MDY
年月日的显示顺序。
5、[2,2,4]
根据前面的显示顺序来显示年月份的位数。
Iconv( "12-31-67",
"D2-MDY[2,2,2]") --> 0
Iconv( "12311967", "D4
MDY[2,2,4]") --> 0
Iconv( "31-12-1967",
"D-DMY[2,2,4]") --> 0
Oconv( 0,
"D4-MDY[2,2,4]") -->
12-31-1967
Oconv( 0,
"D2/DMY[2,2,2]") --> 31/12/67
Oconv( 10,
"D/YDM[4,2,A10]") -->
1967/10/January
Oconv(Iconv( "12-31-67",
"D2-MDY[2,2,2]"),
"D/YDM[4,2,A10]") -->
1967/31/December
时间:
X = Oconv(10000,
"MT") X = "02:46"
X = Oconv(10000,
"MTHS") X = "02:46:40am"
X = Oconv(10000,
"MTH") X = "02:46am"
X = Oconv(10000,
"MT.") X = "02.46"
X = Oconv(10000,
"MTS") X = "02:46:40"
X = Oconv(time(),
"MTS") X = 当前系统时间
常见问题:
1.判断字符串是否为空
Len( trim(variable) ) = 0
IsNull(variable)
2.对日期的处理
Ereplace(DSLink30.PDATE,"-","") 将"-"分隔符的字符串日期中的"-"替换掉
Date.tag(date()) 系统日期以"-"分隔
2007-08-21
Tomorrow = Oconv(Date() + 1,
"D4/YMD") "1997/5/24"
DateCurrentDateTime(date())
2007-08-22 11:44:34.000 (DS Routine)
DSJobStartDate 2007-08-22
DSJobStartTime 11:48:58
DSJobStartTimestamp 2007-08-22
11:48:58
Ereplace(Date.tag(date()), "-", "") :
Ereplace(Oconv(time(), "MTS"), ":",
"") 20070822114434