INET_ATON() और INET_NTOA() का उपयोग करके IP पते को पूर्णांक में बदलना
इसके लिए INET_ATON() का उपयोग करें। पहले टेबल बनाएं:
mysql> create table DemoTable1404 ( IpAddress varchar(40) ); Query OK, 0 rows affected (1.02 sec)
रिकॉर्ड डालें:
mysql> insert into DemoTable1404 values('192.168.120.0'); Query OK, 1 row affected (0.43 sec)
mysql> insert into DemoTable1404 values('192.168.120.20'); Query OK, 1 row affected (0.60 sec)
mysql> insert into DemoTable1404 values('224.0.0.0'); Query OK, 1 row affected (0.42 sec)
सभी रिकॉर्ड देखें:
mysql> select * from DemoTable1404;
आउटपुट:
+----------------+ | IpAddress | +----------------+ | 192.168.120.0 | | 192.168.120.20 | | 224.0.0.0 | +----------------+ 3 rows in set (0.00 sec)
VARCHAR कॉलम से IP पते को उसी टेबल में पूर्णांक में कॉपी करने की क्वेरी:
mysql> select inet_aton(IpAddress) from DemoTable1404;
परिणाम:
+----------------------+ | inet_aton(IpAddress) | +----------------------+ | 3232266240 | | 3232266260 | | 3758096384 | +----------------------+ 3 rows in set (0.00 sec)
रूपांतरण सफल हुआ या नहीं, यह साबित करने के लिए:
mysql> select inet_ntoa('3232266240');
आउटपुट:
+-------------------------+ | inet_ntoa('3232266240') | +-------------------------+ | 192.168.120.0 | +-------------------------+ 1 row in set (0.27 sec)
व्याख्या: INET_ATON('a.b.c.d') IPv4 पते को 32-बिट अनसाइन्ड इंटीजर में बदलता है: a*256^3 + b*256^2 + c*256 + d। INET_NTOA(संख्या) विपरीत रूपांतरण करता है। ये फंक्शन IP रेंज क्वेरी, इंडेक्सिंग और संग्रहण दक्षता के लिए उपयोगी हैं। ध्यान दें: ये केवल IPv4 के लिए काम करते हैं; IPv6 के लिए INET6_ATON/NTOA (MySQL 5.6+) का उपयोग करें।