麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 網站 > 幫助中心 > 正文

IP處理函數inet_aton()和inet_ntoa()使用說明

2024-07-09 22:47:54
字體:
來源:轉載
供稿:網友
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×2^24 + 207×2^16 + 224×2^8 + 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的處理都是自己寫的函數,但是使用時效率卻是十分的差,下面函數是把IP轉化成整數:
復制代碼 代碼如下:

CREATE FUNCTION `transIPtoInt`(ip char(31)) RETURNS char(31)
begin
DECLARE value1 CHAR(10);
DECLARE value2 CHAR(10);
DECLARE value3 CHAR(10);
DECLARE value4 CHAR(10);
set value1=SUBSTRING_INDEX(ip, '.', 1);
set value2=SUBSTRING_INDEX(ip, '.', 2);
set value2=SUBSTRING_INDEX(value2, '.', -1);
set value3=SUBSTRING_INDEX(ip, '.', -2);
set value3=SUBSTRING_INDEX(value3, '.', 1);
set value4=SUBSTRING_INDEX(ip, '.', -1);
set value1=value1<<24;
set value2=value2<<16;
set value3=value3<<8;
return value1+value2+value3+value4;
end;

為了IP地址比較的方便,我還寫了一個把IP地址中每一段都補足三位的函數,如下:
復制代碼 代碼如下:

CREATE FUNCTION `fillIp`(ip char(31)) RETURNS char(31)
begin
DECLARE value1 CHAR(31);
DECLARE value2 CHAR(10);
DECLARE value3 CHAR(10);
DECLARE value4 CHAR(10);
set value1=SUBSTRING_INDEX(ip, '.', 1);
set value2=SUBSTRING_INDEX(ip, '.', 2);
set value2=SUBSTRING_INDEX(value2, '.', -1);
set value3=SUBSTRING_INDEX(ip, '.', -2);
set value3=SUBSTRING_INDEX(value3, '.', 1);
set value4=SUBSTRING_INDEX(ip, '.', -1);
set value1=LPAD(value1,3,'0');
set value2=LPAD(value2,3,'0');
set value3=LPAD(value3,3,'0');
set value4=LPAD(value4,3,'0');
return CONCAT(value1,'.',value2,'.',value3,'.',value4);
end;
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 黄片一级毛片 | 黄视频免费在线观看 | 欧美一级aa免费毛片 | 一级观看免费完整版视频 | 黄色网址进入 | 精品三区视频 | 国产精品一区2区3区 | 欧美18—19sex性hd按摩 | 日韩一级精品 | 激情网站免费观看 | 欧洲成人一区二区 | 亚洲资源在线播放 | 免费黄色在线电影 | 一级做人爱c黑人影片 | 免费看黄色一级大片 | 一本色道久久综合狠狠躁篇适合什么人看 | 欧美精品激情视频 | 96视频在线免费观看 | 干一夜综合 | 黄wwww| 最新国产毛片 | 亚洲网站在线观看视频 | 色播一区 | 欧美人成在线 | 全黄性性激高免费视频 | 国产免费观看视频 | 国产成人精品区 | 久久国产一级片 | 18pao国产成人免费视频 | xnxx 美女19 | 一本到免费视频 | 国产伦精品一区二区三区在线 | 99综合视频 | 天天草天天干天天射 | 亚洲精品久久久久久下一站 | 日韩.www| 国产99视频在线观看 | 成人三级电影网址 | 国产精品999在线观看 | 欧美一级片免费在线观看 | 中文字幕在线播放第一页 |