简介
我正在使用FreeRadius
并且我想查询我的表,radacct
并在给定的年份中选择两个字段(字段)并datetime
提供一个SUM
和每个月。bytes_send
bytes_received
我的数据库布局
fieldtype fieldname
--------- ----------
varchar username
datetime start
datetime end
bigint bytes_send
bigint bytes_received
数据库数据
username start end bytes_send bytes_received
--------- ------------------- ------------------- ---------- --------------
admin 2013-04-22 22:14:34 2013-04-22 22:24:51 8723142 851314
admin 2013-05-14 11:50:50 2013-05-15 11:58:35 11073753 958437
admin 2013-05-14 14:36:24 2013-05-15 15:11:59 869125711 3152551
admin 2013-05-15 20:45:16 2013-05-15 20:47:11 2373753 114857
demo 2013-05-14 23:21:51 2013-05-15 05:32:20 59125919 3815816
期望的输出
我想要一个查询,它会输出类似这样的内容(SQL 查询只需要知道年份(2013
在这种情况下)和用户名(admin
在这种情况下)。
username month total_bytes
-------- ----- -----------
admin 04 9574456
admin 05 886799062
我的解决方案
我可能会用 PHP 来做这件事,我设置了一年(2013
在这种情况下)并使用一个简单的 for 循环执行 12 个查询(每个月一个)。
我的问题
我提出的解决方案可能不是最好的解决方案,因此我想知道这是否可以只用一个查询来完成?