修改数据库属性
问题描述:
我有我的数据存储在PostGre开源数据库中,IP地址是数据库中的一列,我希望运行一个查询例如修改IP地址从192.168.1.1
到192.168.1.2
但是最大的问题在IP存储与连接到它在一列修改数据库属性
所以一些数据,
192.168.1.1/RaghavIP
将被修改,以192.168.1.2/RaghavIP
我希望将数据保持不变,只是更改IP地址
PostGRE支持正则表达式和子我已经尝试过,但都没有成功
SELECT ipaddress
FROM mytable
WHERE ipaddress SIMILAR TO '%(_|__|___).(_|__|___).(_|__|___).(_|__|___)%';
感谢您的帮助:)
答
如果你想改变一个特定的IP地址到另一个特定的IP地址,不改变任何尾随信息,你可以简单地做:
UPDATE mytable
SET ipaddress = replace(ipaddress, '192.168.1.1', '192.168.1.2')
WHERE ipaddress LIKE '192.168.1.1%';
WHERE
子句是可选的,它将使大表更快。
如果您想更新只拉哈夫的IP地址,查询更简单:
UPDATE mytable
SET ipaddress = '192.168.1.2/RaghavIP'
WHERE ipaddress = '192.168.1.1/RaghavIP';
第一查询正是我一直在寻找很多的感谢 – matta118