mysql替换IP地址中的最后一组数字

时间:2018-01-20 23:32:22

标签: mysql

我想用*。

替换所有IP:端口的最后一位数字

例如:192.168.1.1:2000应该成为192.168.1.*:2000

1 个答案:

答案 0 :(得分:0)

set @ip = '192.168.1.1:2000';
select concat(
    substring_index(substring_index(@ip, ':', 1), '.', 3),
    '.*:',
    substring_index(@ip, ':', -1)
);

如果您想了解它的工作原理,请运行以下查询:

set @ip = '192.168.1.1:2000';
select @ip
    , substring_index(@ip, ':', 1)
    , substring_index(@ip, ':', -1)
    , substring_index(substring_index(@ip, ':', 1), '.', 3);

它会返回

192.168.1.1  2000  192.168.1

您只需要连接最后两列和中间部分(.*: