oracle sql中查询ip段内的记录
2013-07-01 16:11
232 查看
sql 语句中使用如下(ip值的存储类型为varchar):
TO_NUMBER(REGEXP_SUBSTR(login_ip,'\\w+',1,1))*POWER(2,24)+
TO_NUMBER(REGEXP_SUBSTR(login_ip,'\\w+',1,2))*POWER(2,16)+
TO_NUMBER(REGEXP_SUBSTR(login_ip,'\\w+',1,3))*POWER(2,8)+
TO_NUMBER(REGEXP_SUBSTR(login_ip,'\\w+',1,4))*POWER(2,0)>=?
程序中传入参数进行转换(原始ip参数为字符串):
public static long convert(String ip) {
String[] ips = ip.split("\\.");
long result = 0;
for (int i = 0; i < 4; i++) {
long temp = Integer.parseInt(ips[i]);
result += temp << ((3 - i) * 8);
}
return result;
}
TO_NUMBER(REGEXP_SUBSTR(login_ip,'\\w+',1,1))*POWER(2,24)+
TO_NUMBER(REGEXP_SUBSTR(login_ip,'\\w+',1,2))*POWER(2,16)+
TO_NUMBER(REGEXP_SUBSTR(login_ip,'\\w+',1,3))*POWER(2,8)+
TO_NUMBER(REGEXP_SUBSTR(login_ip,'\\w+',1,4))*POWER(2,0)>=?
程序中传入参数进行转换(原始ip参数为字符串):
public static long convert(String ip) {
String[] ips = ip.split("\\.");
long result = 0;
for (int i = 0; i < 4; i++) {
long temp = Integer.parseInt(ips[i]);
result += temp << ((3 - i) * 8);
}
return result;
}
相关文章推荐
- oracle sql重复记录查询
- ORACLE 中rowid查询重复记录的sql语句分析
- 记录Oracle查询SQL语句(不定时更新)。
- Oracle 删除重复数据只留一条 查询及删除重复记录的SQL语句 1、查找表中多余的重复记录,重复记录是根据单个字段(Id)来判断 select * from 表 wher
- Oracle 查询并删除重复记录的SQL语句
- oracle查询及删除重复记录的SQL语句
- Oracle 查询并删除重复记录的SQL语句
- Oracle取查询结果第一条记录SQL
- 如何查询oracle中sql操作的记录
- Oracle 查询并删除重复记录的SQL语句
- Oracle 查询并删除重复记录的SQL语句
- Oracle取查询结果数据的第一条记录SQL
- Oracle 查询并删除重复记录的SQL语句
- Oracle 查询并删除重复记录的SQL语句
- Oracle 查询并删除重复记录的SQL语句
- Oracle 查询并删除重复记录的SQL语句
- Oracle 、sql如何查询表的第一条记录和最后一条记录
- SQL查询前10条记录(SqlServer/mysql/oracle)[语法分析]
- oracle 的sql,查询时间为某年某月某日某时某分某秒等的记录,data或者TIMESTAMP(6)类型的字段
- Oracle 查询并删除重复记录的SQL语句