从ips的mysql表中选择b类

从ips的mysql表中选择b类,mysql,select,ip,Mysql,Select,Ip,从IP表(1.2.3.4)中提取前两个八位组并将其放入另一个表(1.2)的方法是什么 您必须编写一个用户定义的函数,如下所示 创建函数SPLIT_STR( x VARCHAR(255), delim VARCHAR(12岁), 位置INT ) 返回VARCHAR(255) 返回替换(子字符串(子字符串索引(x、delim、pos), 长度(子串索引(x,delim,位置-1))+1), 德利姆,”; 然后运行查询 选择SPLIT_STR(ip,'.',1)作为第一个, 将_STR(ip,'.',

从IP表(1.2.3.4)中提取前两个八位组并将其放入另一个表(1.2)的方法是什么

您必须编写一个用户定义的函数,如下所示 创建函数SPLIT_STR( x VARCHAR(255), delim VARCHAR(12岁), 位置INT ) 返回VARCHAR(255) 返回替换(子字符串(子字符串索引(x、delim、pos), 长度(子串索引(x,delim,位置-1))+1), 德利姆,”; 然后运行查询 选择SPLIT_STR(ip,'.',1)作为第一个, 将_STR(ip,'.',2)拆分为秒
来自iptable

这就是你要找的吗

如果IP存储为整数

SELECT ip, SUBSTRING_INDEX(ip, '.', 2) class
FROM
(
    SELECT INET_NTOA(167773449) ip
) t
输出

|       IP | CLASS |
--------------------
| 10.0.5.9 |  10.0 |

如果它们存储在字符串表示形式中,则

SELECT ip, SUBSTRING_INDEX(ip, '.', 2) class
  FROM ...