如何在sql中编写方程式?

时间:2016-09-21 06:26:02

标签: sql equations

我想在sql中实现这个等式:

 f(x) = f(a) + (f(b)-f(a)) * (x-a)/(b-a)

我的输入如下:

ng2-Table on Git

我尝试的是:

select ((select CosValue from CosineTable where Angle=70) +
        ((select CosValue from CosineTable where Angle=75) -
         (select CosValue from CosineTable where Angle=70)) * (73-70) / (75-70)
from CosineTable;

它向我显示语法错误。

2 个答案:

答案 0 :(得分:0)

您缺少一个结束括号)

试试这个:

SELECT  ( ( SELECT  CosValue
        FROM    CosineTable
        WHERE   Angle = 70
      ) + ( ( SELECT    CosValue
              FROM      CosineTable
              WHERE     Angle = 75
            ) - ( SELECT    CosValue
                  FROM      CosineTable
                  WHERE     Angle = 70
                ) ) * ( 73 - 70 ) / ( 75 - 70 ) )
FROM    CosineTable;

但只有在Subselects中总是得到一个值时,它才有效。

答案 1 :(得分:0)

假设您的表中每个角度只有一行,您可以使用交叉连接简化查询:

select a70.cosvalue + (a75.cosvalue - a70.cosvalue) * (73-70) / (75-70))
from CosineTable a70
  cross join cosinetable a75
where a70.angle = 70
  and a75.angle = 75;