首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SSIS·三角函数

SSIS·三角函数
EN

Stack Overflow用户
提问于 2019-04-29 17:20:21
回答 2查看 75关注 0票数 3

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

例如:

SIN(lat_org_rad) COS(long_org_rad) ACOS(long_org_rad)

有人能帮我吗?

谢谢

EN

回答 2

Stack Overflow用户

发布于 2019-04-30 03:02:44

SSIS: COS()SIN()ACOS()无法使用SSIS来实现,你必须编写一个脚本组件来实现,使用的是.NET框架中的System.Math汇编。

详细答案

我将此答案作为OP编写的答案的附加信息:

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

数学函数和time functions

  • System functions

下表(官方文档)包含SSIS表达式语言支持的数学函数:

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

脚本组件

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

参考文献

票数 1
EN

Stack Overflow用户

发布于 2019-04-29 20:16:15

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

代码语言:javascript
复制
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;
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55900321

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档