我在sql中遇到了這個問題。就像我想在更新之前先進行計算一樣。例如,我有公式首先聲明,像這樣m = y/x然後另一個公式用於更新另一列。我將爲C++製作示例代碼,但我希望在SQL中使用它。如何用計算更新列
int m, x, y, xn;
main()
{
m = y/x;
xn = (4.5*m/(POWER((1+m*m),0.5)))+y;
}
謝謝回答。
我在sql中遇到了這個問題。就像我想在更新之前先進行計算一樣。例如,我有公式首先聲明,像這樣m = y/x然後另一個公式用於更新另一列。我將爲C++製作示例代碼,但我希望在SQL中使用它。如何用計算更新列
int m, x, y, xn;
main()
{
m = y/x;
xn = (4.5*m/(POWER((1+m*m),0.5)))+y;
}
謝謝回答。
一般SQL相當於一個變量是子查詢的列:
with sometable (x, y) as (select 3, 15 from dual)
--
select x, y, m
from (select x, y, y/x as m
from sometable);
X Y M
---------- ---------- ----------
3 15 5
(我用一個內嵌的觀點,但它也可能是表示爲WITH
子句。)
在Oracle 12c中,您還可以聲明PL/SQL函數內聯並編寫您喜歡的任何計算。
我想爲我的表添加新的列,並在同一時間更新它。例如,假設我已經添加了另一列,我想通過2次計算的結果在該列中輸入值(示例公式:首先,m = y/x然後YN =(4.5 * m /(POWER((1 + m * m),0.5)))+ y;)該YN的結果將是我想要在我添加的表中更新的值。我希望我明確自己。 Thankyou爲 –
您可以更新內聯視圖,例如'更新(從t選擇x,y,y/x作爲m)set y = m;'當我得到一分鐘時,我會將它添加到我的答案中。 –
試試這個:
declare @M int;
declare @x int, @y int, @xn int;
SET @M= @y/@x;
SET @xn = (4.5*@m/(POWER(([email protected]*@m),0.5)))[email protected];
SELECT @xn AS Result1;
你可以提供你想使用的SQL表嗎? – Myonara
編輯你的問題,並提供樣本數據和期望的結果。 –
@GordonLinoff 我想爲我的表添加新列並在同一時間更新它。例如,假設我已經添加了另一列,我想通過2次計算的結果在該列中輸入值(示例公式:首先,m = y/x然後YN =(4.5 * m /(POWER((1 + m * m),0.5)))+ y;)該YN的結果將是我想要在我添加的表中更新的值。我希望我明確自己。 Thankyou的迴應:) –