# This query properly handles calls that span from the # previous reset period into the current period but # involves more work for the SQL server than those # below query = "\ SELECT SUM(AcctSessionTime - GREATER((%%b - AcctStartTime::ABSTIME::INT4), 0)) \ FROM radacct \ WHERE UserName='%{${key}}' \ AND AcctStartTime::ABSTIME::INT4 + AcctSessionTime > '%%b'" # # This query ignores calls that started in a previous # reset period and continue into into this one. But it # is a little easier on the SQL server # #query = "\ # SELECT SUM(AcctSessionTime) \ # FROM radacct \ # WHERE UserName='%{${key}}' \ # AND AcctStartTime::ABSTIME::INT4 > '%%b'" # # This query is the same as above, but demonstrates an # additional counter parameter '%%e' which is the # timestamp for the end of the period # #query = "\ # SELECT SUM(AcctSessionTime) \ # FROM radacct \ # WHERE UserName='%{${key}}' \ # AND AcctStartTime::ABSTIME::INT4 BETWEEN '%%b' AND '%%e'"