Greenplum小把戏 - ip地址表达方式转换函数
正常大家平时所见的IP地址通常是用点号(.)分割的四组数字,例如:192.168.0.100,但是做通信行业的朋友可能会比较习惯在数据库表中存储长整型(long)数字,以方便查询比较和节约存储。
如果采用这种方式,那么会经常遇到在点号分割传和长整型之间的转换,在Greenplum中,我们可以通过下面两个函数实现二者之间的轻松转换:
函数主体为:
CREATE OR REPLACE FUNCTION inet_aton(text)RETURNS bigint AS
$BODY$
SELECT
split_part($1,'.',1)::int8*(256*256*256)+
split_part($1,'.',2)::int8*(256*256)+
split_part($1,'.',3)::int8*256+
split_part($1,'.',4)::int8;
$BODY$LANGUAGE sql VOLATILE;
CREATE OR REPLACE FUNCTION inet_ntoa(bigint)RETURNS text AS
$BODY$
SELECT (($1>>24) & 255::int8) || '.' ||
(($1>>16) & 255::int8) || '.' ||
(($1>>8) & 255::int8) || '.' ||
($1 & 255::int8) as result
$BODY$LANGUAGE sql VOLATILE;
使用演示:
postgres=# select inet_aton('192.168.100.107');inet_aton
------------3232261227
(1 row)postgres=# select inet_ntoa(3232261227);inet_ntoa
-----------------192.168.100.107
(1 row)
Greenplum小把戏 - ip地址表达方式转换函数相关推荐
- 华为机考攻略(python)--字符串操作【9题】(第四题*HJ33整数与IP地址间的转换)
系列文章目录 文章目录 系列文章目录 前言 一.*HJ33整数与IP地址间的转换 二.sound code 总结 前言 一.*HJ33整数与IP地址间的转换 描述: 原理:ip地址的每段可以看成是一个 ...
- C练题笔记之:牛客-HJ033.整数与IP地址间的转换
题目: 描述 原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成 一个长整数. 举例:一个ip地址为10.0.3.193 每段数字 ...
- 牛客网--整数与IP地址间的转换
题目描述 原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起来,然后把这个二进制数转变成 一个长整数. 举例:一个ip地址为10.0.3.193 每段数字 ...
- IP地址与二进制转换
IP地址与二进制转换 子网掩码 子网掩码是一种用来指明一个IP地址的哪些位标识的是主机所在的子网,以及哪些位标识的是主机的位掩码.它的作用是将IP地址分为网络地址和主机地址两部分.子网掩码可以确定子网 ...
- 华为机试HJ33:整数与IP地址间的转换
作者:翟天保Steven 版权声明:著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处 题目描述: 原理:ip地址的每段可以看成是一个0-255的整数,把每段拆分成一个二进制形式组合起 ...
- 网络攻击知识之几种IP地址攻击方式
网络攻击知识之几种IP地址攻击方式 作者:hackmaster 来源:赛迪网安全社区 1.OOB攻击 这是利用NETBIOS中一个OOB (Out of Band)的漏洞而来进行的,它的原理是通过TC ...
- 计算机网络 王道考研2021 第四章:网络层 -- lPv4地址、私有IP地址、网络地址转换 (NAT)、WAN / LAN
文章目录 1. lPv4地址 1.1 IP地址 1.2 IP编址的历史阶段 1.3 分类的IP地址 1.4 互联网中的IP地址 1.5 特殊lP地址:不能作为主机或者路由器的具体接口标识 1.6 私有 ...
- IP地址跨网段转换-无需网关
IP地址跨网段转换-不需要PLC网关配置 应用场景: 多个工业现场设备的IP地址出厂默认设置(IP地址一样),或者设备的IP地址不在同一个网段,需要将这些设备的IP地址转换成同一网段的独立的IP地址, ...
- 整数与IP地址间的转换Python
data = input().split(".") #IP地址转整数 a = [] b = '' caozuo = [a.append(bin(int(i))[2:].rjust( ...
- 【Eigen和tf中位姿表达方式转换】【tf::StampedTransform】【Eigen::Matrix4f】
[tf的使用][Eigen和tf中位姿表达方式转换][tf::StampedTransform][Eigen::Matrix4f] 0 前言 1 tf::StampedTransform<--& ...
最新文章
- docker安装、源、网络
- OPC的数据访问方法分别有同步访问、异步访问和订阅式
- java11模块化开发_【JDK 11】关于 Java 模块系统,看这一篇就够了
- Linux 常用命令二 pwd cd
- python网站框架下载_最受欢迎的7款Python开源框架总结,忍不住收藏了~
- HCIE Security 防火墙反病毒 备考笔记(幕布)
- springmvc返回json字符串中文乱码问题
- 当下主流的数据库及其特点
- 查询结果按中文拼音顺序排序
- 苹果蒸发639亿 华尔街陷入苹果需求全恐慌模式
- 索尼手机android怎么连,索尼WI-SP500耳机连接安卓手机蓝牙的方法讲解
- 360校招笔试算法题
- 糯米网电子商务模式:上线当天销售额600多万元的缘由
- 单目标跟踪SiamMask:特定目标车辆追踪 part2
- Django和Flask区别
- esp8266-01s控制继电器开关
- 下一代Linux文件系统,存储那些事儿(二): 下一代Linux文件系统BTRFS简介
- python3 paramiko 远程执行 ssh 命令、上传文件、下载文件
- 计算机网络(二):HTTP 和 HTTPS
- 【RPA入门教程】UiBot数据抓取功能使用教学(二)
热门文章
- python爬取招聘网信息并保存为csv文件
- Go语言aes加密解密处理
- 拉卡拉支付——综合普惠金融科技平台
- OPPO以数字普惠金融助力小微企业
- java脚本引擎Rhino 入门
- ubuntu18.04加nvidia显卡安装在华硕笔记本上gx1050ti(飞行堡垒fx8)+cuda+cudnn+ttensorflow+keras
- Springboot物理地址映射和Nginx静态资源代理实现前端上传并访问服务器图片
- sucess - money - freedom
- 狼性教育——让孩子成为主宰命运地强者
- 离散数学_集合论部分_总结