REPLICATE(SSIS 表达式)
适用范围:SQL Server Azure 数据工厂中的 SSIS Integration Runtime
返回多次复制后的字符表达式。 times 参数的计算结果必须为整数。
注意
REPLICATE 函数经常使用长字符串,因此更有可能受到对表达式长度 4000 个字符的限制。 如果某表达式的计算结果具有 Integration Services 数据类型 DT_WSTR 或 DT_STR,则该表达式将被在 4000 个字符处截断。 如果子表达式的结果类型为 DT_STR 或 DT_WSTR,则该子表达式将同样被截断为 4000 个字符,与总体表达式结果类型无关。 可以适当处理截断的结果,否则会导致警告或错误。 有关详细信息,请参阅语法 (SSIS)。
语法
REPLICATE(character_expression,times)
参数
character_expression
要复制的字符表达式。
times
指定 character_expression 复制次数的整数表达式。
结果类型
DT_WSTR
备注
如果 times 为 0,则该函数返回零长度的字符串。
如果 times 为负数,则该函数返回一个错误。
times 参数还可以使用变量和列。
REPLICATE 只可用于 DT_WSTR 数据类型。 如果 character_expression 参数是字符串文字或数据类型为 DT_STR 的数据列,则它在 REPLICATE 执行操作前隐式转换为 DT_WSTR 数据类型。 其他数据类型必须显式转换为 DT_WSTR 数据类型。 有关详细信息,请参阅 Integration Services 数据类型和转换(SSIS 表达式)。
如果有一个参数为空,REPLICATE 将返回空结果。
表达式示例
以下示例将一个字符串文字复制了三次。 返回结果为“Mountain BikeMountain BikeMountain Bike”。
REPLICATE("Mountain Bike", 3)
以下示例将复制 Name 列中的值,复制次数为 Times 变量中的值。 如果 Times 为 3, Name 为 Touring Front Wheel,则返回结果为 Touring Front WheelTouring Front WheelTouring Front Wheel。
REPLICATE(Name, @Times)
以下示例将复制 Name 变量中的值,复制次数为 Times 列中的值。 Times 是非整数数据类型,而表达式包含了一个到整数数据类型的显式转换。 如果 Name 包含 Helmet, Times 为 2,则返回结果为“HelmetHelmet”。
REPLICATE(@Name, (DT_I4(Times))