2017-10-19 285 views
0

我有一個Excel公式我試圖轉換爲SQL。式是如下將Excel公式轉換爲T-SQL

=1800*85%/450*E23 

說在E23的值是12,則公式將等於40.8

在SQL我已經寫此:


DECLARE @Number1 INT 
DECLARE @Number2 INT 
Declare @Number3 INT 
Declare @Number4 FLOAT 


Set @Number1 = 1800 
Set @Number2 = 85 
Set @Number3 = 450 

SELECT @Number1 * @Number2/@Number3 * Column1 AS FormulaResult 
FROM DB; 

如果任何人都可以建議如何使@ Number2 = 85變成85%,這樣我就可以得到和Excel一樣的結果,我會大量讚賞它。

謝謝

+1

'設置@ NUMBER2 = 85/100' –

+1

和'DECLARE @ NUMBER2 FLOAT' –

+0

謝謝你的快速回復,這是有意義的。 – user20936

回答

3

這是簡單的數學。注意:85%乘85後乘以0.01。

DECLARE 
    @Number1 INT, 
    @Number2 INT, 
    @Number3 INT; 
--Declare @Number4 FLOAT; -- don't know what you're doing with this 

Set @Number1 = 1800 
Set @Number2 = 85 
Set @Number3 = 450 

DECLARE @DB table (column1 int); 
INSERT @DB VALUES (10),(11),(12),(15),(20); 

SELECT column1, @Number1 * (@Number2*.01)/@Number3 * column1 AS FormulaResult 
FROM @DB; 

結果

column1  FormulaResult 
----------- --------------------------------------- 
10   34.000000 
11   37.400000 
12   40.800000 
15   51.000000 
20   68.000000