За последние 24 часа нас посетили 18946 программистов и 1635 роботов. Сейчас ищут 1162 программиста ...

обновление с использованием регулярных

Тема в разделе "MySQL", создана пользователем joost, 20 дек 2007.

  1. joost

    joost Guest

    Есть запись в таблице

    напрмер
    варолыврлафырларлыв
    фываывафывафывпаыв
    ывфпывпывф
    ывфпывпыфвпывпывфп
    цена неизвесное число $
    sdsdkl;k;lsdk;lsdag
    sdagsdgsg
    sdagsd
    g


    надо удалить из записи "цена неизвесное число $"

    пробовал update `descr` set `descr`=replace(`descr`, 'цена (.*) \$','label')

    регулярка не идет
     
  2. host

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

    С нами с:
    20 июн 2007
    Сообщения:
    733
    Симпатии:
    3
    update `descr` set `descr`= '' WHERE cena='цена неизвесное число $'
     
  3. joost

    joost Guest

    этот запрос очистить все строки в которых есть только 'цена неизвесное число $'. Это не то, что мне надо.
     
  4. host

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

    С нами с:
    20 июн 2007
    Сообщения:
    733
    Симпатии:
    3
    joost
    что спросили, то и ответил.
     
  5. Ipolit

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

    С нами с:
    18 дек 2007
    Сообщения:
    34
    Симпатии:
    0
    см. сюда.
     
  6. joost

    joost Guest


    о regexp я знаю. но разве можно его использовать в update, а имено с update data set name=replace()?
     
  7. Ipolit

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

    С нами с:
    18 дек 2007
    Сообщения:
    34
    Симпатии:
    0
    возможно поможет не регулярные выражения, а SUBSTRING

    хотя, как по мне, не правильно построена структура базы... гораздо проще обрабатывать все эти строки до вставки в таблицы и вставлять только нужную инфу (вспоминаю и предыдущий темы от joost, в частности о like)
     
  8. joost

    joost Guest

    так и делаю, но не учел все. теперь надо исправлять