PostgreSQL中将IP地址转换成整数保存的代码

前端之家收集整理的这篇文章主要介绍了PostgreSQL中将IP地址转换成整数保存的代码前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

Postgresql中将IP地址转换成整数保存的代码,Postgresql本身并不带类似的转换函数,只能自己通过split_part之类的方法进行分割转换,还在代码并不复杂。

CREATE FUNCTION ip2int(text) RETURNS bigint AS $$
SELECT split_part($1,'.',1)::bigint*16777216 + split_part($1,2)::bigint*65536 +
 split_part($1,3)::bigint*256 + split_part($1,4)::bigint;
$$ LANGUAGE sql  IMMUTABLE RETURNS NULL ON NULL INPUT;
 
 
//该代码片段来自于: http://www.sharejs.com/codes/sql/8678

假设 www.sharejs.com 的ip地址为200.233.1.2,则将200.233.1.2转换成整数的结果如下:
SELECT ip2int('200.233.1.2');
>> 3370713346


原文转自:脚本分享http://www.sharejs.com/codes/sql/8678

猜你在找的Postgre SQL相关文章