За последние 24 часа нас посетил 18401 программист и 1606 роботов. Сейчас ищут 950 программистов ...

mysql replace

Тема в разделе "MySQL", создана пользователем inline, 14 май 2014.

  1. inline

    inline Активный пользователь

    С нами с:
    21 май 2010
    Сообщения:
    466
    Симпатии:
    0
    Есть поля таблицы. Строки. В каждой строке по несколько предложений.
    Нужно после третьего с начала и перед третьим с конца предложением вставить кое-что.
    Как?
     
  2. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    в базе данных нет последовательности. есть первичные уникальные ключи. вставлять что-то между чем-то не требуется. просто добавь строки с нужным значением тех полей, по которым ты сортируешь.
     
  3. inline

    inline Активный пользователь

    С нами с:
    21 май 2010
    Сообщения:
    466
    Симпатии:
    0
    не правильно меня поняли

    например есть поле "desc" таблици "table" типа "text"
    "маша мила раму. мила хорошо. старалась. [сюда вставить] но как то не так. [и сюда] вот таки помыла. оценили труд. купили шоколад."

    нужно update table set desc = REPLACE(тут не знаю что и как)
    а результат должен быть "маша мила раму. мила хорошо. старалась. вставка1. но как то не так. вставка2. вот таки помыла. оценили труд. купили шоколад."
     
  4. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    Видимо так
    UPDATE `table` SET `field` = REPLACE (`field`, '[сюда вставить]', 'вставка1.') WHERE `id`=...
     
  5. inline

    inline Активный пользователь

    С нами с:
    21 май 2010
    Сообщения:
    466
    Симпатии:
    0
    в исходной [сюда вставить] и [и сюда] нет
    "маша мила раму. мила хорошо. старалась. но как то не так. вот таки помыла. оценили труд. купили шоколад."
    ориентир третья с начала "." и третья "." с конца

    update table set desc = REPLACE(desc,'третья точка с начала','нужный текст')

    как средствами мускула найти третья с начала "." , добавить метку и уже метку заменять
     
  6. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    бери строку в пхп и делай с ней что хочешь спокойно. потом апдейт.
     
  7. inline

    inline Активный пользователь

    С нами с:
    21 май 2010
    Сообщения:
    466
    Симпатии:
    0
    в том и дело, что в пхп взять не могу
     
  8. igordata

    igordata Суперстар
    Команда форума Модератор

    С нами с:
    18 мар 2010
    Сообщения:
    32.408
    Симпатии:
    1.768
    пасяму?
     
  9. inline

    inline Активный пользователь

    С нами с:
    21 май 2010
    Сообщения:
    466
    Симпатии:
    0
    так олучается
     
  10. BaranPHP

    BaranPHP Новичок

    С нами с:
    24 янв 2014
    Сообщения:
    356
    Симпатии:
    0
    )) А в чём ты БД редактируешь? Вот все эти REPLACE ты где вводишь?
     
  11. dapperkop

    dapperkop Активный пользователь

    С нами с:
    26 сен 2013
    Сообщения:
    890
    Симпатии:
    0
    да редактировать то можно много из чего.
     
  12. BaranPHP

    BaranPHP Новичок

    С нами с:
    24 янв 2014
    Сообщения:
    356
    Симпатии:
    0
    Вот мне и интересно что он использует.
     
  13. inline

    inline Активный пользователь

    С нами с:
    21 май 2010
    Сообщения:
    466
    Симпатии:
    0
    phpmyadmin
     
  14. BaranPHP

    BaranPHP Новичок

    С нами с:
    24 янв 2014
    Сообщения:
    356
    Симпатии:
    0
    Ну так phpmyadmin позволяет:
    1) в ручную редактить .
    2) редактировать по шаблону
    Код (PHP):
    1. REPLACE (`field`, 'маша мила раму. мила хорошо. старалась.   но как то не так.  вот таки помыла. оценили труд. купили шоколад.', 'маша мила раму. мила хорошо. старалась. ОЧЕНЬ  но как то не так. НАКОНЕЦ вот таки помыла. оценили труд. купили шоколад.') 
    3) еще он может работать с правильно составленными массивами почитать можно тут, но не так как ты хочешь. SQL не поддерживает всякие условия
    .
     
  15. dapperkop

    dapperkop Активный пользователь

    С нами с:
    26 сен 2013
    Сообщения:
    890
    Симпатии:
    0