কম্পিউটার টিউটোরিয়াল

MySQL-এ INET_ATON() দিয়ে IP ঠিকানা INTEGER-এ কনভার্ট করা

INET_ATON() এবং INET_NTOA()

IPv4 ঠিকানাকে ৩২-বিট অসাইনড ইন্টিজারে এবং বিপরীতমুখী কনভারশনের জন্য MySQL-এ বিল্ট-ইন ফাংশন রয়েছে।

সারণি ও ডেটা

mysql> create table DemoTable1404 (IpAddress varchar(40));
mysql> insert into DemoTable1404 values('192.168.120.0'),('192.168.120.20'),('224.0.0.0');

কনভারশন কোয়েরি

mysql> select inet_aton(IpAddress) from DemoTable1404;
+----------------------+
| inet_aton(IpAddress) |
+----------------------+
| 3232266240           |
| 3232266260           |
| 3758096384           |
+----------------------+

রিভার্স যাচাই

mysql> select inet_ntoa('3232266240');  -- 192.168.120.0

ব্যাখ্যা

  • INET_ATON('a.b.c.d') = a×256³ + b×256² + c×256 + d
  • স্টোরেজ দক্ষতা: VARCHAR(15) বরং INT (৪ বাইট) কম জায়গা নেয়
  • রেঞ্জ কোয়েরি দ্রুত: WHERE ip_int BETWEEN inet_aton('192.168.1.0') AND inet_aton('192.168.1.255')
  • IPv6-র জন্য INET6_ATON() / INET6_NTOA() (MySQL 5.6+)
  1. MySQL-এ শুধুমাত্র NULL মান আপডেট করে অন্য মান দিয়ে প্রতিস্থাপন করা

  2. MySQL-এ AS কীওয়ার্ড ব্যবহার করে কলামের নাম পরিবর্তন করা (এলিয়াস)

  3. MySQL-এ ALTER TABLE CHANGE ব্যবহার করে কলামকে NULLable করা (VARCHAR থেকে NULL ডিফল্ট)

  4. MySQL-এ DISTINCT কলাম থেকে গড় (AVG) বের করা