0

混乱を招くため、ここに手順全体を投稿することはできません。私がやろうとしているのは、VATの計算です。そのためには、0.25 を掛ける必要がありShareます。

 select.....
    (SALES_PRICE * 0.8) as Revenue, 
    (SALES_PRICE * 0.8 * 1-u.discount) as Share,
    (SALES_PRICE * 0.8 * 1-u.discount) * 0.25 as VAT, 
    (SALES_PRICE * 0.8 * 1-u.discount) + (isa.SALES_PRICE * 0.8 * (1-u.discount) * (0.25)) as Total

編集:いくつかの大きな助けを得て、正しい計算とフォーマットになりました。 結果は次のとおりです。

       CONVERT(DECIMAL(30, 2), ( sales_price * 0.8 )) 
       AS Revenue, 
       CONVERT(DECIMAL(30, 2), ( sales_price * 0.8 * 1 - u.discount )) 
       AS Share, 
       CONVERT(DECIMAL(30, 2), ( sales_price * 0.8 * 1 - u.discount ) * 0.25) 
       AS VAT, 
       CONVERT(DECIMAL(30, 2), ( sales_price * 0.8 * 1 - u.discount ) * 1.25) 
       AS Total
4

2 に答える 2

1

変化する

(SALES_PRICE * 0.8 * 1-u.discount * 0,25) as VAT

(SALES_PRICE * 0.8 * 1-u.discount * 0.25) as VAT

また、いくつかのブラケットを利用したい場合があります。次のように言ってみましょう

(SALES_PRICE * 0.8 * (1-u.discount) * 0.25) as VAT

演算子の優先順位 (Transact-SQL)を見てください。

于 2014-04-08T04:17:25.417 に答える
1

.次の小数点記号として使用する必要があります0.25

(SALES_PRICE * 0.8 * (1-u.discount) * 0.25) as VAT

小数点以下 2 桁だけを取得するには、次のようにしますCONVERT(DECIMAL(30,2), yourvalue)

合計を取得するには、1.25 を掛けるだけです(SALES_PRICE * 0.8 * (1-u.discount) * 1.25)

于 2014-04-08T04:17:52.167 に答える