MYSQL中INET_ATON()函數


  例如我們現在要在一個表中查出 ip 在 192.168.1.3 到 192.168.1.20 之間的 ip 地址,我們首先想到的就是通過字符串的比較來獲取查找結果,但是如果我們通過這種方式來查找,結果集將為空,原因在於字符串的比較是一個字符一個字符的比較,當對應字符相同時,就比較下一個,直到遇到能區分大小的字符,才停止比較,后面的字符也將忽略。

  如果通過字符串的比較就會查出空集,因為前者已經比后者大了。

  我們可以通過 INET_ATON(IP) 函數把 ip 轉換為數字,然后在進行比較,這樣就可以得出我們需要的結果:

  select * from ip_table where inet_aton(ip) > inet_aton('192.168.1.3') and inet_aton(ip) < inet_aton('192.168.1.20');


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM