MYSql的IP对int的转换函数
select inet_aton(ip) from table_name;
网络地址:
192.168.33.123
每一个值最大不会越过255,也就是十六进制的FF,两个Byte刚好表示的最大值是255,
这样子,就可以用一个32位的整形来保存这个地址
192 168 33 123
1100 0000 1010 1000 0010 0001 0111 1011
把这些二进制合在一起就是32位的数了
11000000101010000010000101111011
十进制为
3232244091
* INET_ATON(expr)
给出一个作为字符串的网络地址的"点地址"(如127.0.0.1)表示,返回一个代表该地址数值的整数。地址可以是4或8比特地址。
mysql> SELECT INET_ATON('209.207.224.40');
-> 3520061480
产生的数字总是按照网络字节顺序。如上面的例子,数字按照 209×2563 + 207×2562 + 224×256 + 40 进行计算。
INET_ATON() 也能理解短格式 IP 地址:
mysql> SELECT INET_ATON('127.0.0.1'), INET_ATON('127.1');
-> 2130706433, 2130706433
注释: 在存储由INET_ATON() 产生的值时,推荐你使用 INT UNSIGNED 列。假如你使用 (带符号) INT列, 则相应的第一个八位组大于127的IP 地址值会被截至 2147483647 (即, INET_ATON('127.255.255.255') 所返回的值)。请参见11.2节,“数值类型”。
* INET_NTOA(expr)
给定一个数字网络地址 (4 或 8 比特),返回作为字符串的该地址的电地址表示。
*
mysql> SELECT INET_NTOA(3520061480);
-> '209.207.224.40'
分享到:
相关推荐
IP处理函数inet_aton()和inet_ntoa()使用说明,需要的朋友可以参考下
本篇文章是对Mysql的IP处理函数inet_aton()与inet_ntoa()进行了详细的分析介绍,需要的朋友参考下
本文将介绍如何在数据库中使用合适格式保存ip地址数据,并能方便的对ip地址进行比较的方法。 1、保存ip地址到数据库 数据库中保存ip地址,字段一般会定义为: `ip` char(15) NOT NULL, 因为ip地址(255.255.255.255)...
当前很多应用都适用字符串char(15)来存储IP地址(占用16个字节),利用inet_aton()和inet_ntoa()函数,来存储IP地址效率很高,适用unsigned int 就可以满足需求,不需要使用bigint,只需要4个字节,节省存储空间,...
C语言inet_ntoa()函数:将网络二进制的数字转换成网络地址 头文件: #include <sys> #include <netinet> #include 定义函数: char * inet_ntoa(struct in_addr in); 函数说明:inet_ntoa()用来将参数in 所指...
根据ip和掩码计算ip地址段的开始和结束ip; 根据ip计算ip int值,类似于mysql函数 inet_aton和inet_ntoa
MySQL中存在INET_ATON() 、INET_NTOA()函数进行IP整型和字符串之间的转换,那么Python中存在什么方法可以实现MySQL中INET_ATON() 、INET_NTOA()的功能呢?方法肯定是有的~ 方法如下 # 导入相关模块包 import ...
inet_aton() -- convert IP addr string (123.45.67.89) to 32-bit packed format inet_ntoa() -- convert 32-bit packed format IP to string (123.45.67.89) socket.getdefaulttimeout() -- get the default time...
复制代码 代码如下: #encoding: utf-8 import socket from hashlib import sha1 from random import randint from struct import unpack, pack from socket import inet_aton, inet_ntoa from bisect import ...
int inet_aton(const char *cp,struct in_addr *inp) char *inet_ntoa(struct in_addr in) 函数里面 a 代表 ascii n 代表 network.第一个函数表示将 a.b.c.d 的 IP转换为 32 位的 I P,存储在 inp 指针里面.第二个...
inet_aton, inet_addr, and inet_ntoa Functions Section 3.7. inet_pton and inet_ntop Functions Section 3.8. sock_ntop and Related Functions Section 3.9. readn, writen, and readline Functions ...