字符型IP地址转换成数字IP的SQL函数

使用SQL函数可以实现许多的功能,下面为您介绍的是字符型IP地址转换成数字IP的SQL函数示例,供您参考,希望对您学习SQL函数能够有所帮助。
    
/**//*–调用示例  
   
select   dbo.f_IP2Int(‘192.168.0.11’)  
select   dbo.f_IP2Int(‘12.168.0.1’)  
–*/  
CREATE   FUNCTION   [dbo].[f_IP2Int](  
@ip   char(15)  
)RETURNS   bigint  
AS  
BEGIN  
DECLARE   @re   bigint  
SET   @re=0  
SELECT   @re=@re+LEFT(@ip,CHARINDEX(‘.’,@ip+’.’)-1)*ID  
,@ip=STUFF(@ip,1,CHARINDEX(‘.’,@ip+’.’),”)  
FROM(  
SELECT   ID=CAST(16777216   as   bigint)  
UNION   ALL   SELECT   65536  
UNION   ALL   SELECT   256  
UNION   ALL   SELECT   1)A  
RETURN(@re)  
END 

/**//*–数字   IP   转换成格式化   IP   地址  
   
–邹建   2004.08(引用请保留此信息)–*/  
   
/**//*–调用示例  
   
select   dbo.f_Int2IP(3232235531)  
select   dbo.f_Int2IP(212336641)  
*/  
CREATE   FUNCTION   [dbo].[f_Int2IP](  
@IP   bigint  
)RETURNS   varchar(15)  
AS  
BEGIN  
DECLARE   @re   varchar(15)  
SET   @re=”  
SELECT   @re=@re+’.’+CAST(@IP/ID   as   varchar)  
,@IP=@IP%ID  
from(  
SELECT   ID=CAST(16777216   as   bigint)  
UNION   ALL   SELECT   65536  
UNION   ALL   SELECT   256  
UNION   ALL   SELECT   1)a  
RETURN(STUFF(@re,1,1,”))  
END 
 

 

【编辑推荐】

基于时间SQL函数详解

巧用SQL函数实现身份证15位变18位

教您使用SQL中的TRUNC函数

SQL中表变量的不足

SQL循环语句的妙用

文章来源网络,作者:运维,如若转载,请注明出处:https://shuyeidc.com/wp/302608.html<

(0)
运维的头像运维
上一篇2025-05-24 21:17
下一篇 2025-05-24 21:18

相关推荐

发表回复

您的邮箱地址不会被公开。必填项已用 * 标注