记账程序进展(7)

请注意,本文编写于 1760 天前,最后修改于 1760 天前,其中某些信息可能已经过气。

最近复习考试,剩下的时间就敲代码。
echarts的引用还算方便,先把比较好做的分类饼图做出来了。

南丁格尔玫瑰图 (1).png
南丁格尔玫瑰图 (1).png

开始的一张发现乱七八糟的分类太多。
于是精简了一下

南丁格尔玫瑰图 (2).png
南丁格尔玫瑰图 (2).png

一目了然,房租和保险几乎占了一半的支出。在设备上的开销甚至大于吃喝。
关于月统计的的折线图已经做出了框架,有一个问题迟迟解决不了。
通过SQL语句

select DATE_FORMAT(FROM_UNIXTIME(actime), '%Y-%m') as month, sum(acamount) as sum from ".$prename."account left join ".$prename."account_class on ".$prename."account.acclassid =".$prename."account_class.classid where ".$prename."account_class.classtype =2 and ac0 =1 and acuserid='$_SESSION[uid]' group by month

可以实现按月把开销变成组输出,但在统计特殊开销的时候,如果这个月内没有出现这个类别的开销,则不会返回这个月的月份。开始还在尝试用IFNULL,后来发现数据什么的都是其次的,月份数不出来已经没戏了。
现在想到的几个办法。
用前面完整的月份建立值都是0的数组,和这边取到的不完整的带数据的月份去匹配合并。
直接通过复杂的函数补全未出现的月份,但这里因为月份初始不一定是1,可能用到count倒推。
SQL代码中单独抽取月份,再配合IFNULL输出完整的数组。

评论区

评论列表