PowerCenter功能函数文档格式.docx
《PowerCenter功能函数文档格式.docx》由会员分享,可在线阅读,更多相关《PowerCenter功能函数文档格式.docx(159页珍藏版)》请在冰豆网上搜索。
第三章转换函数33
1、简介33
1.1TO_CHAR(Dates)34
1.3TO_DATE37
1.4TO_DECIMAL39
1.5TO_FLOAT39
1.6TO_INTEGER40
第四章数据整理函数41
1、简介41
1.1IS_DATE42
1.2IS_NUMBER43
1.3IS_SPACES44
1.4ISNULL45
1.5SOUNDEX45
第五章日期函数46
1、简介46
1.1ADD_TO_DATE47
1.2DATE_COMPARE49
1.3DATE_DIFF49
1.4GET_DATE_PART51
1.5LAST_DAY52
1.6ROUND(Dates)53
1.7ROUND(Numbers)54
1.8SET_DATE_PART56
1.9TRUNC(Dates)57
1.10TRUNC(Numbers)59
第六章数值函数60
1、简介60
1.1ABS61
1.2CEIL61
1.3CUME62
1.4EXP63
1.5FLOOR63
1.6LN64
1.7LOG64
1.8MOD65
1.9MOVINGAVG66
1.10MOVINGSUM66
1.11POWER67
1.12SIGN68
1.13SQRT68
第七章科学函数69
1、简介69
1.1COS69
1.2COSH70
1.3SIN70
1.4SINH71
1.5TAN71
1.6TANH72
第八章特殊函数72
1、简介72
1.1ABORT73
1.2DECODE73
1.3ERROR75
1.4IIF75
1.5LOOKUP77
第九章可变函数78
1、简介78
1.1SETCOUNVRIABLE78
1.2SETMAXVARIABLE79
1.3SETMINVARIABLE80
1.4SETVARIABLE81
第十章译码函数83
1、简介83
1.1AES_DECRYPT83
1.2AES_ENCRYPT84
1.3COMPRESS84
1.4CRC3284
1.5DEC_BASE6485
1.6DECOMPRESS85
1.7ENC_BASE6485
1.8MD586
第一章聚合函数
1、简介
聚合函数返回Aggregator组件选定Port中非空值的汇总值,使用聚合函数,您可以:
◇计算组中所有行的单值;
◇返回聚合转换中每个组的单值;
◇应用过滤器以计算选定端口中特定行的值;
◇使用运算符在函数中执行算术运算;
◇计算单次传递中来自同一源列的两个或多个聚合值。
转换语言包括下列聚合函数:
函数
语法
说明
AVG
AVG(numeric_value[,filter_condition])
返回组中所有值的平均值。
在Designer中提供。
COUNT
COUNT(value[,filter_condition])或COUNT(*[,filter_conditon])
返回组中包含非空值的记录数。
FIRST
FIRST(value[,filter_condition])
返回组中的第一条记录。
LAST
LAST(value[,filter_condition])
返回组中最后一条记录。
MAX
MAX(value[,filter_condition])
返回在组中找到的最大值或最后日期。
MEDIAN
MEDIAN(numeric_value[,filter_condition])
返回所选端口中所有值得中值。
MIN
MIN(value[,filter_condition])
返回在组中找到最小值或最早日期。
PERCENTILE
PERCENTILE(numeric_value,percentile[,filter_condition])
计算一组数中,达到指定百分点的值。
STDDEV
STDDEV(numeric_value[,filter_condition])
返回组的标准偏差。
SUM
SUM(numeric_value[,filter_condition])
返回组中所有记录的总和。
VARIANCE
VARIANCE(numeric_value[,filter_condition])
返回组中所有记录的反差。
1.1AVG
适用范围:
Designer
返回一系列行中所有值的平均值。
您也可以选择应用过滤器来限制您所读取的行,然后计算平均值。
AVG是几个聚合函数之一。
您只能在AVG函数中嵌入一个其它类型的聚合函数,且嵌入的函数必须返回数字数据类型。
聚合函数只能在聚合转换中使用。
◎语法
参数
含义
numeric_value
必须。
数字数据类型。
传递您要为其计算平均值的值。
您可以输入任何有效的转换表达式。
filter_condition
可选。
限制搜索的行。
过滤条件必须为数值或计算结果为TRUE、FALSE或NULL。
◎返回值
数值。
如果传递给函数的所有值都为NULL,或未选定任何行,则返回NULL。
例如,对于所有行,过滤条件的计算结果均为FALSE或NULL。
注:
如果返回值是精确到15位以后的小数型,您可以在会话特性中启用高精度,以确保可精确到小数点后28位。
◎空值
如果值为NULL,则AVG函数将忽略该行。
但是,如果从端口传递的所有值都为NULL,则AVG将返回NULL。
默认情况下,PowerCenterServer在聚合函数中将空值视为NULL。
如果您传递整个空值端口或空值组,则函数将返回NULL。
但是,配置PowercenterServer时,您可以选择要如何处理聚合函数中的空值。
您可以在聚合函数中将空值视为零或NULL。
◎分组依据
AVG函数将根据您在转换中定义的“分组依据”端口对值进行分组,并为每个组返回一个结果,如果没有“分组依据”端口,则AVG函数会将所有行都视为一个组,并返回一个值。
◎示例
以下表达式返回闪关灯的平均批发成本:
AVG(WHOLESALE_COST,ITEM_NAME=’Flashlight’)
ITEM_NAME
WHOLESALE_COST
Flashlight
35
NavigationCompass
8.05
RegulatorSystem
150
29
Depth/PressureGauge
88
31
返回值:
31.66
◎提示
您可以在AVG函数计算平均值之前对传递给AVG函数的值进行算术运算。
例如:
AVG(QTY*PRICE-DISCOUNT)
1.2COUNT
返回组中包含非空值的行数。
此外,您也可以选择包括星号(*)参数,以计算转换中的所有输入值数。
COUNT是几个聚合函数之一。
只能在COUNT函数中嵌入一个其他类型的聚合函数。
在计算行数之前,可以应用一些条件来过滤行。
COUNT(value[,filter_condition])
或
COUNT(*[,filter_condition])
value
必需。
任何数据类型(二进制除外)。
传递您要计算的值。
*
用于计算转换中的所有行数。
整数
如果所有传递给此函数的值都为NULL(除非您包括星号参数),则返回零。
如果所有值都为NULL,则函数将返回0。
如果您应用星号参数,则此函数将计算所有行数(不管行中的列是否包含空值)。
如果您应用value参数,则此函数将忽略包含空值的列。
默认情况下,PowercenterServer在聚合函数中将空值视为NULL。
如果您传递整个空值或空值组,则函数将返回NULL。
以下表达式计算库存量少于5个的项目数(空值除外):
COUNT(ITEM_VALUE,IN_STOCK<
5)
ITEM_VALUE
IN_STOCK
10
NULL
2
Compass
5
SagetyKnife
8
HalogenFlashlight
1
在此示例中,函数计算Halogen闪关灯而不是NULL项目的数量。
该函数计算转换中的所有行数(包括空值),如下列示例中所示:
COUNT(*,QTY<
ITEM_NAEM
QTY
SafetyKnife
在此示例中,函数计算NULL项目和Halogen闪光灯。
如果您包括星号函数,但不使用过滤器,则函数将计算传递到转换中的所有行数。
COUNT(*)
6
1.3FIRST
返回在端口或组中找到的第一个值。
您还可以选择应用过滤器以限制PowerCenterServer读取的行。
只能在FIRST函数中嵌入一个其它类型的聚合函数。
FIRST是几个聚合函数之一。
Value
传递您要为其返回第一个值的值。
组中的一个值。
如果传递给函数的所有值为NULL,或未选择任何行(如对于所有行,过滤条件的计算结果为FALSE或NULL),则返回NULL。
如果值为NULL,则FIRST函数将忽略该行。
但是,如果从端口传递的所有值都为NULL,则FIRST将返回NULL。
但是,配置PowerCenterServer时,您可以选择要如何处理聚合函数中的空值。
FIRST函数将根据您在转换中定义的“分组依据”端口对值进行分组,并为每个组返回一个结果。
如果没有“分组依据”端口,FIRST会将所有行视为一组,并返回一个值。
以下表达式返回ITEM_NAME端口中价格大于$10.00的第一个值:
FIRST(ITEM_NAME,ITEM_PRICE>
10)
ITEM_PRICE
NavigatonCompass
以下表达式返回ITEM_NAME端口中价格大于$40.00的第一个值:
FIRST(ITEM_NAEM,ITEM_PRICE>
40)
Navigation
1.4LAST
返回所选端口中的最后一行。
您可以只将另外一个聚合函数嵌入LAST。
LAST是几个聚合函数之一。
传递您要为其返回最后一行的值。
Filter_condition
端口中的最后一行。
如果传递给函数的所有值为NULLL,或未选择任何行(如对于所有行,过滤条件的计算结果FALSE或NULL),则返回NULL。
以下表达式返回价格大于$10.00的ITEMS_NAME端口中的最后一行:
LAST(ITEM_NAME,ITEM_PRICE>
Vest
1.5MAX(Dates)
返回在端口或组中找到最后日期。
您可以应用过滤器来限制搜索的行。
您只能将另外一个聚合函数嵌入MAX。
MAX是几个聚合函数之一。
您还可以使用MAX返回端口或组中的最大数值。
MAX(date[,filter_condition])
Date
日期/时间数据类型。
传递您要为其返回最大日期的日期。
日期。
您可以返回端口或组的最大日期。
以下表达式将返回flashlights的最大顺序日期:
MAX(ORDER_DATE,ITEM_NAME=‘Flashlight’)
ORDER_DATE
Apr201998
May151998
Sep211998
DivingHood
Aug181998
Feb11998
Oct101998
1.6MAX(Numbers)
返回在端口或组中找到的最大数值。
您还可以使用MAX返回端口或组中的最后日期。
MAX(numeric_value[,filter_condition])
Numeric_value
传递您要为其返回最大数值的数值。
如果值为NULL,则MAX将忽略它。
但是,如果从端口传递的值都为NULL,MAX将返回NULL。
MAX将根据您在转换中定义的“分组依据”端口对值进行分组,并为每组返回一个结果。
如果没有“分组依据”端口,则MAX会将所有行都视为一个组,并返回一个值。
第一个表达式将返回flashlights的最高价格:
MAX(PRICE,ITEM_NAME=‘Flashlight’)
PRICE
360
55
79
162
85
返回值:
85.00
1.7MEDIAN
适用范围:
返回所选端口中所有值的中值。
如果端口中有偶数个值,则当所有值都按顺序排列在数轴上时,中值将是中间两个值的平均值。
如果端口中有奇数个值,则中值是中间的数字。
您也可以选择应用过滤器来限制您所读取的行,然后计算中值。
您只能在MEDIAN函数中嵌入一个其它类型的聚合函数,且嵌入的函数必须返回数字数据类型。
MEDIAN是几个聚合函数之一。
如果值为NULL,则MEDIAN函数将忽略该行。
但是,如果从端口传递的值都为NULL,MEDIAN将返回NULL。
但是,配置PowerCenterServer时,您可以选择要如何处理聚合函数中的空值。
MEDIAN将根据您在转换中定义的“分组依据”端口对值进行分组,并为每组返回一个结果。
如果没有“分组依据”端口,则MEDIAN会将所有行都视为一个组,并返回一个值。
要计算所有部门的平均薪水,请创建按部门(带有指定以下表达式的端口)分组的Aggregator转换:
MEDIAN(SALARY)
以下表达式将返回stabilizingvests顺序的中值:
MEDIAN(SALES.ITEM=‘StabilizingVest’)
ITEM
SALES
StabilizingVest
504
StabIlizingVest
36
SagelyKnife
MediumTitaniumKnife
Tank
441
ChiselPointKnife
60
1044
WristBandThermometer
110
472.5
1.8MIN(Dates)
返回在端口或组中找到的最早日期。
您只能在MIN中嵌入另外一个聚合函数,且嵌入的函数必须返回日期数据类型。
MIN是几个聚合函数之一。
您还可以使用MIN返回端口或组中的最小数值。
MIN(date[,fi