2016-07-29 11 views
1

これをSQL Serverで計算しようとしています。 C = 85、Z = 4、D = 6、およびE = 4SQL Serverのスーパースケーティング数学計算

が、私はこの

select 85/4 * (6 * 4) 

を試みたが、これは間違っているように見えるいかなるください

Formula

を示唆

+1

上付き文字はd 'をeの累乗といいます。 SQLがどこにあるのかは分かりません。 – Cato

答えて

2
select 85.0/4 * power(6,4) 

やや曖昧式、それはその後、D^Eを乗じzで割ったCを意味する - とにかく - SQL Xを使用^ y = POWER(x、y)また、浮動小数点が使用されていることを確認するために85.0を入れてください

+0

85.0/4/power(6,4)を選択してください - これも可能です - 計算順序が変更された様子はありますか? – Cato

3

POWERを使用して指数を扱います。

SELECT 85.0/(4 * POWER(6, 4)) 

又は

SELECT CAST(85 AS DECIMAL(10, 4))/(4 * POWER(6, 4)) 

または可変フォーマットで:

SELECT c/(z * POWER(d, e)) 
+0

数式作成者がC /(zd^e)を意味するとは思うかもしれませんが、あなたの計算はゼロになります。 – Cato

+0

@AndrewDeightonキャストに問題はありますか? –

+0

以前は85 /(4 * POWER(6,4))の値と演算が整数として実行され、85/{大きい数}がゼロになっていました。速やかに回避するには、.0で使用されている整数をそれらの後ろに書くことです。私は技術計算のためにDECIMALよりもFLOATにキャストすることをお勧めします – Cato