2010-03-28 66 views
0
Select 
id, 
sum(amount), 
vat 
From transactions WHERE id=1; 

在此表中的每個記錄的sql問題有一個大桶百分比,我需要得到所有記錄的總額,但每種的量必須由乘以其增量%。關於總和()和稅收(的MySQL 5.0.89)

有沒有做到這一點沒有循環所有記錄?

回答

2

SELECT id, SUM(amount*(1+vat)) AS total, vat 
FROM transactions 
WHERE id=1 
0

你的東西一樣

Select id, 
      sum(amount + amount*vat)  
From  transactions 
WHERE id=1; 

這將讓你的總和所有金額加上增值稅金額

0

你可以這樣做:

Select id, sum(amount*vat) 
From transactions 
WHERE id=1; 
0

有沒有返回正確的數額

SUM(數量*增值稅)返回1849.14
SUM(數量*(1+增值稅))返回2010.42
SUM(金額+金額*增值稅)退貨2010.42

SELECT amount, vat FROM transactions WHERE id = 1; 

/* 13 rows returned 

     *amount* * vat % * 
     100.00 | 17.50 
     25.28 | 2.28 
     5.00 | 1.15 
     5.00 | 1.15 
     5.00 | 1.15 
     1.00 | 1.18 
     4.00 | 1.18 
     3.00 | 1.18 
     3.00 | 1.18 
     1.00 | 1.10 
     4.00 | 1.15 
     4.00 | 1.10 
     1.00 | 1.18 
    */ 
0

你不乘以百分比,100 * 17.5是1750. 100 * 17.5/100是正確的方式,或者你的百分比應該表示爲.175