Math SSI和xB7;三角函数

Math SSI和xB7;三角函数,math,ssis,expression,etl,derived-column,Math,Ssis,Expression,Etl,Derived Column,我试图在SSIS表达式(作为新列)中计算SIN和COS,但找不到任何表达式 例如: SIN(拉丁美洲组织) COS(长期组织研究) 助理文书主任(长期组织研究) 有人能帮我吗 谢谢我能够使用脚本组件解决此问题: public override void Entrada0_ProcessInputRow(Entrada0Buffer Row) { if (Row.latdestrad == 0) { Row.kms = 0; } else

我试图在SSIS表达式(作为新列)中计算SIN和COS,但找不到任何表达式

例如:

SIN(拉丁美洲组织) COS(长期组织研究) 助理文书主任(长期组织研究)

有人能帮我吗


谢谢

我能够使用脚本组件解决此问题:

public override void Entrada0_ProcessInputRow(Entrada0Buffer Row)
{
    if (Row.latdestrad == 0)
    {
        Row.kms = 0;
    }
    else
    {
        Row.kms = Math.Acos(
            (Math.Sin(Row.latorgrad) * (Math.Sin(Row.latdestrad))) +
            (Math.Cos(Row.latorgrad) * (Math.Cos(Row.latdestrad)) * Math.Cos(Row.londestrad - Row.lonorgrad)))
            * 57.29577951 * 111.302;
    }
}

TLDR:
COS()
SIN()
ACOS()
无法使用SSIS表达式实现。您必须编写一个脚本组件,才能使用.NET framework中的程序集来实现


详细答案 我写这个答案是为了补充OP所写答案的信息:

SSIS表达式语言包括一组在表达式中使用的函数,它们可以分为以下几组:

  • 数学函数
  • 字符串函数
  • 日期和时间函数
  • 系统功能
下表(官方文档)包含SSIS表达式语言支持的数学函数:

基于此,SSIS表达式语言不提供
COS()
SIN()
ACOS()
函数

脚本组件 另一方面,您可以使用System.Math assembly(包含以下文档中列出的高级方法)从脚本组件转换中获益,以获得更高级的数学函数:


工具书类

作为脚本组件。很简单,添加kms作为新列。