Math SSI和xB7;三角函数
我试图在SSIS表达式(作为新列)中计算SIN和COS,但找不到任何表达式 例如: SIN(拉丁美洲组织) COS(长期组织研究) 助理文书主任(长期组织研究) 有人能帮我吗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
谢谢我能够使用脚本组件解决此问题:
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表达式语言包括一组在表达式中使用的函数,它们可以分为以下几组:
- 数学函数
- 字符串函数
- 日期和时间函数
- 系统功能
COS()
、SIN()
和ACOS()
函数
脚本组件
另一方面,您可以使用System.Math assembly(包含以下文档中列出的高级方法)从脚本组件转换中获益,以获得更高级的数学函数:
工具书类