Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Замена части строки, UPDATE наименьшим к-вом запросов 
V
    Опции темы
Deg
  Дата 11.7.2009, 00:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 28.9.2006
Где: Dniepropetrovsk, Ukraine

Репутация: нет
Всего: нет



Спасибо, что заинтересовались моей темой.

Есть 3 таблицы с разной структурой. Объединяет их только 1 поле "field1"
Есть потребность изменить это поле, но только частично, а точнее:

Есть поля, отвечающие условию
Код

SELECT `field1`,`id` FROM `t1` WHERE `field1` LIKE '1234%'


У полученного набора записей нужно поменять как раз '1234' на, например, 5678.
ID - ключ int(10), FIELD1 - строка TEXT.

Если допустить, что запрос вернул 3 записи:
  • '1234555',44
  • '1234666',49
  • 1234900',585

то нужно сделать, если по отдельности, следующее (прошу прощения, что объясняю по-японски)
Код

UPDATE `t1` SET `field1`='5678555' WHERE `id`=44;
UPDATE `t1` SET `field1`='5678666' WHERE `id`=49;
UPDATE `t1` SET `field1`='5678900' WHERE `id`=585;


p/s.: Прошу прощения, что объясняю по-японски/Прошу не обсуждать неправильную структуру smile
PM MAIL WWW ICQ Skype   Вверх
Zloxa
Дата 11.7.2009, 12:48 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 53
Всего: 161



Код

update t1 set field1 = concat('5678',substr(field1,5)) from t1 where field1 like '1234%'




--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
Deg
Дата 13.7.2009, 22:28 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 76
Регистрация: 28.9.2006
Где: Dniepropetrovsk, Ukraine

Репутация: нет
Всего: нет



Спасибо, исчерпывающе! Тяжело мне быть валенком в SQL... Ну ниче - все в переди...
PM MAIL WWW ICQ Skype   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Составление SQL-запросов | Следующая тема »


 




[ Время генерации скрипта: 0.0422 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.