[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Замена по рег. выражению MySQL
Renden
Всем доброго дня, есть база трафика, сменилась подсеть было 192.168.2.N стало 192.168.5.N, вопрос как с помощью Mysql запроса можно заменить все 2 на 5 но чтоб N остались не изменными?
На php то не проблема сделать сначала select, потом php заменить, и сделать insert. Интересно можно ли только на Mysql такое выполнить?



Спустя 7 минут, 44 секунды (10.04.2012 - 11:02) Игорь_Vasinsky написал(а):
думаю тебе будет сначала самому попробывать http://sitear.ru/material/mysql-regexp

а вообще

https://www.google.ru/webhp?hl=ru&tab=ww#hl...iw=1366&bih=653 wink.gif

Спустя 6 минут, 58 секунд (10.04.2012 - 11:09) Renden написал(а):
Игорь_Vasinsky
Да я и так сначала погуглил, даже regexp тут особо то не нужен тк, типа такого запроса всеравно выберет то что нужно:

SELECT INET_NTOA(trafd_to) FROM mod_traffic WHERE INET_NTOA(trafd_to) LIKE '192.168.2.%'

проблема не в том как выбрать, а проблема в том как заменить, я лично хз)

Спустя 49 минут, 15 секунд (10.04.2012 - 11:58) Игорь_Vasinsky написал(а):
ну мне тож люб вариан с "выдернуть"->"заменить" - "вставить"

Спустя 12 минут, 5 секунд (10.04.2012 - 12:10) Renden написал(а):
Хм, через жопу конечно но получилось.. :)

UPDATE mod_traffic_copy SET new = REPLACE(INET_NTOA(trafd_to), '192.168.2.', '192.168.5.');
UPDATE mod_traffic_copy SET trafd_to = INET_ATON(new);
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.