海妖 发表于 2015-1-16 22:48:52

MYSQL网页编程之用SQL语句统计IP地点前三段

MySQL的支持者们却认为,MySQL所保留的功能都是精华,并且是你部署、MySQL学习教程配置和维护这个数据库所必不可少的一些功能。ip地点|统计|语句

/*writtenbyJaron,2003-07-10*/
/*初次宣布于CSDN*/
/*转载请说明出处和保存此版权信息*/


在做网站统计专家时,我们必要对IP地点段举行统计和剖析,这里使用SQL-SERVER的自界说函数和存储历程完成在数据库中间接天生了局,以下代码稍作修正便可。

/*SQL语句*/

selecttop99dbo.fn_ipleft3(IPAddress),count(id)FROMtblStatisticalDetailgroupbydbo.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

通过支付一定费用,客户可以得到优先的24/7支持,访问内容丰富的在线知识库和联系一个专门的技术负责经理。

仓酷云 发表于 2015-1-20 05:02:45

呵呵,这就是偶想说的

兰色精灵 发表于 2015-1-26 22:24:39

代替了原来VB式的错误判断。比Oracle高级不少。

爱飞 发表于 2015-2-4 21:01:23

相信各位对数据库和怎么样学习数据库都有一些经验和看法,也会有人走了一些弯路总结出自己的经验来,希望大家能把各自的看法和经验拿出来分享,给别人一份帮助,给自己一份快乐

乐观 发表于 2015-2-10 10:30:26

需要注意的一点,也是我使用过程中发现的一个问题。在建立function->schema->table后,如果在现有的分区表上建立没有显式声明的聚集索引时,分区表会自动变为非分区表。这一点很让我纳闷。

第二个灵魂 发表于 2015-3-1 09:09:29

需要注意的一点,也是我使用过程中发现的一个问题。在建立function->schema->table后,如果在现有的分区表上建立没有显式声明的聚集索引时,分区表会自动变为非分区表。这一点很让我纳闷。

愤怒的大鸟 发表于 2015-3-10 13:03:06

这就引发了对varchar和char效率讨论的老问题。到底如何分配varchar的数据,是否会出现大规模的碎片?

透明 发表于 2015-3-17 08:04:28

你觉得我的非分区索引无法对起子分区,你可以提醒我一下呀!没有任何的提醒,直接就变成了非分区表。不知道这算不算一个bug。大家也可以试试。

灵魂腐蚀 发表于 2015-3-24 02:33:48

代替了原来VB式的错误判断。比Oracle高级不少。
页: [1]
查看完整版本: MYSQL网页编程之用SQL语句统计IP地点前三段