Sql 自由半径计数器

Sql 自由半径计数器,sql,freeradius,Sql,Freeradius,我正在使用Freeradius的SQL模块检查用户是否已达到其每周数据限制,为此,我使用以下查询: 选择IFNULLSUMAcctInputOctets、0+IfNullSumAcctOutAutoctets、0作为已用数据,从radacct b中的SELECT*中选择,其中用户名为“%$k}”,日期为“FORMATacctstarttime”,%Y-%u'=日期为“FORMATCURDATE”,%Y-%u”按acctuniqueid a分组 现在“{%k}”被用户用户名的Freeradius替

我正在使用Freeradius的SQL模块检查用户是否已达到其每周数据限制,为此,我使用以下查询:

选择IFNULLSUMAcctInputOctets、0+IfNullSumAcctOutAutoctets、0作为已用数据,从radacct b中的SELECT*中选择,其中用户名为“%$k}”,日期为“FORMATacctstarttime”,%Y-%u'=日期为“FORMATCURDATE”,%Y-%u”按acctuniqueid a分组

现在“{%k}”被用户用户名的Freeradius替换,但%u也被替换,这不应该发生,因为它应该由SQL处理以使用周数

%Y不受自由半径的影响


关于如何进行查询以使Freeradius不会逃避此操作,您有什么想法吗?

正确的逃避顺序是%%u。%%防止将其解释为单字母扩展。

您应该这样使用
%{User Name}

Hmm,双引号而不是单引号'确保Freeradius不会触及变量。考虑它的解决方案。NasyQuale=从${NasyTABLE }中选择ID、NASNEX、短名称、类型、秘密、服务器