SSIS RIGHT 函数

SSIS RIGHT 是一个字符串函数,用于从字符串列或字符表达式中返回指定数量的右侧部分或最右边的字符。本文将通过示例解释如何使用 RIGHT 函数,并且返回字符表达式右侧部分的语法如下所示。

RIGHT(<<Character_expression>>, <<numbers>>)

Character_expression:原始字符串或列名。

数字:RIGHT 函数需要从右侧返回的字符总数。

为了演示 SSIS RIGHT 函数,我们使用了下面的 Employee 表,其中包含 15 条记录。请参考 SSIS 中的 Union All 转换派生列转换内置函数SQL Server 文章。

Source Table

SSIS RIGHT 函数

为此,我将添加一个数据流任务并双击它以进入数据流区域。接下来,添加 OLE DB 源以从上述 SQL 数据库表中读取数据。请将 OLE DB 源连接到派生列转换,因为它有助于编写 RIGHT 函数表达式并创建新列。

Data Flow to add Derived Column

接下来,双击打开派生列转换编辑器。将 SSIS RIGHT 函数拖放到表达式下的行单元格中,并将 Character_expression 替换为列名,将数字替换为整数(10)。您可以手动删除整个表达式,也可以通过拖放列来自动替换它。

以下表达式从 name 字段返回最右边的(右侧部分)十个字符。

RIGHT(Name,10)
SSIS RIGHT Function Expression

以下表达式使用 FINDSTRING 函数返回 @ 符号的位置。使用 LEN 函数获取 Name 的长度。接下来,SSIS RIGHT 函数从 @ 符号处返回电子邮件地址(域名)的右侧部分。

RIGHT([Email Adress], LEN([Email Adress]) - FINDSTRING([Email Adress],"@",1))

单击“确定”关闭编辑器窗口。

拖放 Union All 转换并将派生列连接到它。接下来,右键单击连接节点并选择启用数据查看器。请运行 RIGHT 函数包,查看 name 的右侧部分以及 email address 列中的域名。

SSIS RIGHT Function package output