日期:2014-05-17  浏览次数:20505 次

查询IP地址的SQL语句
现有表 T1
里面有字段 开始IP:startIP 结束IP:endIP 
现需要给出1个IP地址,查询符合条件的数据
求SQL
------最佳解决方案--------------------
具体什么样子的,你要怎么查


如果存的168.1.1.1这样的 地址

要between and 是买办法查的

网上有把ip 地址转换为数字存的方法。
------其他解决方案--------------------
引用:
ip地址格式为:11.111.111.111
startIP:11.111.111.010
endIP: 11.111.111.020
判断的ip为:11.111.111.013,判断此ip是否在11.111.111.010与11.111.111.020
之间

也会存在下面格式
startIP:11.111.100.010
endIP: 11.111.100.020

如果你数字都对等的话。直接BETWEEN AND 就成
------其他解决方案--------------------
where  @ip between  startIP  and endIP
------其他解决方案--------------------
ip地址格式为:11.111.111.111
startIP:11.111.111.010
endIP:  11.111.111.020
判断的ip为:11.111.111.013,判断此ip是否在11.111.111.010与11.111.111.020
之间

也会存在下面格式
startIP:11.111.100.010
endIP:  11.111.100.020

------其他解决方案--------------------
引用:
ip地址格式为:11.111.111.111
startIP:11.111.111.010
endIP: 11.111.111.020
判断的ip为:11.111.111.013,判断此ip是否在11.111.111.010与11.111.111.020
之间

也会存在下面格式
startIP:11.111.100.010
endIP: 11.111.100.020

如果你数字都对等的话。直接BETWEEN AND 就成
------其他解决方案--------------------
用函数转成整形再 between