加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql查询ip地址段时注意的问题

发布时间:2021-01-08 03:19:09 所属栏目:MySql教程 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 由于前期设计问题,在保存ip地址时,没有存为整型,而是存成了字符串形式,在查询ip的范围区间时,遇到这样的问题:select ip from t_ip where ip bet

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

由于前期设计问题,在保存ip地址时,没有存为整型,而是存成了字符串形式,在查询ip的范围区间时,遇到这样的问题:
select ip from t_ip where ip between '192.168.11.1' and '192.168.11.150' ,当末尾ip地址最后一位为三位数时,此时就查询不出数据了。
查了一下mysql自带有一个对ip地址做处理的函数inet_aton,作用主要是给出一个作为字符串的网络地址的"点地址"(如127.0.0.1)表示,返回一个代表该地址数值的整数,它产生的数字是按照网略字节顺序。

以上语句改为:select ip from t_ip where inet_aton(ip) between inet_aton('192.168.11.1') and inet_aton('192.168.11.150')这样就能有效比较查出数据了

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!