在SQL中减去1到IP地址

时间:2013-12-19 12:21:12

标签: sql ip

我在SQL中有一个包含特定IP地址作为文本的列。

我想将1减去每行,例如:从10.0.0.12910.0.0.128

可以导出到Excel文件,并将最后一个八位字节.129替换为.128,将.65替换为.64等,但我想知道如果存在更好的方法来操纵它。

谢谢

编辑:我使用MySQL和PHPMyAdmin接口。 结果不必是.0,因为IP范围现在始终为/ 8/16或/ 24。

1 个答案:

答案 0 :(得分:0)

你只想减少最后一个号码。

这是一种非常干净的方式,使用substring_index()

select concat(substring_index(ip, '.', 3),
              '.',
              substring_index(ip, '.', -1) -1
             ) as NewIP