国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > MySQL > 正文

基于Mysql的IP處理函數inet_aton()與inet_ntoa()的深入分析

2020-01-18 23:40:52
字體:
來源:轉載
供稿:網友

有個統計需求,需要對IP進行分類統計,Mysql提供了inet_aton()和inet_ntoa()函數進程處理。
具體可以查看官方手冊

INET_ATON(expr)
給出一個作為字符串的網絡地址的點地址表示,返回一個代表該地址數值的整數。地址可以是4或8比特地址。

mysql> select inet_ntoa(3507806248);
+-----------------------+
| inet_ntoa(3507806248) |
+-----------------------+
| 209.20.224.40         |
+-----------------------+
1 row in set (0.00 sec)

產生的數字總是按照網絡字節順序。如上面,數字按照 209×2563 + 207×2562 + 224×2561 + 40 ×2560 進行計算。我們來驗算下:

mysql> select 209*POW(256,3)+207*POW(256,2)+224*POW(256,1)+40*POW(256,0);
+------------------------------------------------------------+
| 209*POW(256,3)+207*POW(256,2)+224*POW(256,1)+40*POW(256,0) |
+------------------------------------------------------------+
|                                                 3520061480 |
+------------------------------------------------------------+
1 row in set (0.02 sec)

INET_ATON() 也能理解短格式 IP 地址:

mysql> select inet_aton('127.0.0.1'),inet_aton('127.1');
+------------------------+--------------------+
| inet_aton('127.0.0.1') | inet_aton('127.1') |
+------------------------+--------------------+
|             2130706433 |         2130706433 |
+------------------------+--------------------+
1 row in set (0.00 sec)

可以理解成為中間2為地址默認為0。

注: 在存儲由INET_ATON() 產生的值時,推薦你使用 INT UNSIGNED 列。假如你使用 (帶符號) INT列, 則相應的第一個八位組大于127的IP 地址值會被截至 2147483647 (即, INET_ATON('127.255.255.255′) 所返回的值)。當然,直接使用bigint更加省事。

INET_NTOA(expr)
給定一個數字網絡地址 (4 或 8 比特),返回作為字符串的該地址的電地址表示。也就是inet_aton()的反函數。

mysql> select inet_ntoa(3507806248);
+-----------------------+
| inet_ntoa(3507806248) |
+-----------------------+
| 209.20.224.40         |
+-----------------------+
1 row in set (0.00 sec)

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 巴里| 乌兰浩特市| 拜城县| 宁陕县| 博爱县| 房产| 小金县| 海盐县| 原平市| 开平市| 泰州市| 蒲城县| 尖扎县| 乾安县| 商河县| 泽库县| 贡山| 东丽区| 高青县| 双牌县| 武乡县| 肥东县| 木里| 五华县| 陆良县| 无棣县| 陵川县| 五指山市| 库伦旗| 乡城县| 霍林郭勒市| 昌黎县| 诏安县| 牟定县| 邯郸县| 苍南县| 南木林县| 天祝| 获嘉县| 河池市| 财经|