用SQL语句统计IP地址前三段
2008-04-27 20:40
585 查看
/*writtenbyJaron,2003-07-10*/
/* 首次发表于CSDN*/
/*转载请注明出处和保留此版权信息*/
在做统计专家时,我们需要对IP地址段进行统计和分析,这里应用SQL-SERVER的自定义函数和存储过程实现在中直接生成结果,以下代码稍作修改即可。
/* SQL语句*/
selecttop99dbo.fn_IPleft3(IPAddress),count(id)FROMtblStatisticalDetail groupbydbo.fn_IPleft3(IPAddress)orderbycount(id)desc
/*自定义函数的内容*/
CREATEfunctionfn_IPleft3(@IPaddrvarchar(100))
returnsnvarchar(50)
as
begin
declare@IP_resaultvarchar(100)
set@IP_resault=''
declare@aavarchar(100),@bbint,@ccint
set@aa=@IPaddr
set@bb=0
set@cc=charindex('.',@aa)
set@IP_resault=@IP_resault+right('00'+substring(@aa,@bb,@cc-@bb)+'.',4)
while@cc>0
begin
set@bb=@cc+1
set@cc=charindex('.',@aa,@bb)
set@IP_resault=@IP_resault+right('00'+substring(@aa,@bb,casewhen@cc>0then@cc-@bbelselen(@aa)end)+'.',4)
end
returnleft(@IP_resault,11)
end
/* 首次发表于CSDN*/
/*转载请注明出处和保留此版权信息*/
在做统计专家时,我们需要对IP地址段进行统计和分析,这里应用SQL-SERVER的自定义函数和存储过程实现在中直接生成结果,以下代码稍作修改即可。
/* SQL语句*/
selecttop99dbo.fn_IPleft3(IPAddress),count(id)FROMtblStatisticalDetail groupbydbo.fn_IPleft3(IPAddress)orderbycount(id)desc
/*自定义函数的内容*/
CREATEfunctionfn_IPleft3(@IPaddrvarchar(100))
returnsnvarchar(50)
as
begin
declare@IP_resaultvarchar(100)
set@IP_resault=''
declare@aavarchar(100),@bbint,@ccint
set@aa=@IPaddr
set@bb=0
set@cc=charindex('.',@aa)
set@IP_resault=@IP_resault+right('00'+substring(@aa,@bb,@cc-@bb)+'.',4)
while@cc>0
begin
set@bb=@cc+1
set@cc=charindex('.',@aa,@bb)
set@IP_resault=@IP_resault+right('00'+substring(@aa,@bb,casewhen@cc>0then@cc-@bbelselen(@aa)end)+'.',4)
end
returnleft(@IP_resault,11)
end
相关文章推荐
- 用SQL语句统计IP地址前三段
- 分享[ASP.NET] SQL语句统计每天、每月、每年的数据 编辑:吴立星
- 各种按日期、时间段统计SQL语句
- 查找不重复的统计数据的sql语句的写法
- 从A表中选取数据列表到B表中然后统计选取的数据字段总行值的sql语句
- 学生各门课程成绩统计SQL语句大全
- SQL SERVER 统计 SQL 语句 执行的时间
- 统计一个月的总产量的sql语句
- SQL语句统计每天、每月、每年的 数据
- 统计每一天的用户注册数sql语句
- 分类汇总统计的SQL语句
- 统计文件信息及生成SQL语句(VBS)实例
- sqlserver 统计sql语句大全收藏
- 转一个按月统计的SQL语句
- MySQL查询某个字段为某值的次数统计SQL语句
- 最简单的sql语句(增删改查统计)
- [导入]利用SQL语句得到客户端的IP地址
- 按天统计sql语句
- sql语句面试题(城市人口统计) .
- 用sql语句按周、按月、按季、按年统计