【发布时间】:2014-11-13 17:36:34
【问题描述】:
我正在执行一项操作以根据 2 个值计算百分比。
我有一个表格可以跟踪月份和年份的总体价值。
表名称 - donation_tracker
我正在比较当前和上一年的所有月份,然后执行如下计算:
当前值(月 - 2014 年 1 月,CityID- 1)/先前值(月 - 2013 年 1 月,CityID- 1)= 分区值 * 100 = 新百分比值。
有些数学运算看起来是正确的,但有些是不正确的,例如下图显示的是 140,而应该是 130。
我查询的值如下:
列donation_amount设置为
类型 = 十进制
长度 = 10,2。
总和应该是 130...
SQL 代码-
SELECT city_markers.City_ID, city_markers.City_Name, city_markers.City_Lng, city_markers.City_Lat, SUM( d2.Donation_Amount ) , d1.Month, d1.Year, round( (
D2.Donation_amount / D1.Donation_amount
) *100, 2 )
FROM `city_markers`
INNER JOIN donation_tracker d1 ON city_markers.City_ID = d1.City_ID
INNER JOIN donation_tracker D2 ON d1.month = D2.month
AND d1.month = 'January'
AND d2.month = 'January'
AND d2.year = '2014'
AND D1.year = D2.year -1
AND D1.Location_ID = D2.Location_ID
GROUP BY city_markers.City_ID
谢谢。
【问题讨论】:
标签: mysql