Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / MySQL Новый топик    Ответить
 Апдейт похожих строк для оптимизации таблицы  [new]
Максим Гг.
Member

Откуда: Москва
Сообщений: 8
Товарищи, добрый день!
Подскажите, пожалуйста, можно ли апдейтом реализовать следующее:

есть таблица TAB1, в ней данные, примерно, такого плана:

структура: id(уник), skin-id, name, souvenir, stattrak

примерные данные:

1,5,названиеA,0,0
2,6,названиеB,0,0
3,7,названиеC,0,0
4,5,Souvenir названиеA,1,0
5,6,StatTrak™ названиеB,0,1
6,7,названиеD,0,0
7,7,StatTrak™ названиеD,0,1
...

Нужно удалить строки название которых начинается с Souvenir или StatTrak™, но при этом передать значение их полей souvenir/stattrak другим строкам с одноимённым названием обрезая Souvenir или StatTrak™

Т.е. в итоге должно быть так:

1,5,названиеA,1,0
2,6,названиеB,0,1
3,7,названиеC,0,0
4,7,названиеD,0,1
...

Сообщение было отредактировано: 10 янв 20, 11:26
10 янв 20, 11:17    [22056249]     Ответить | Цитировать Сообщить модератору
 Re: Апдейт похожих строк для оптимизации таблицы  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 20016
Да нет проблем, ежели в значениях нет опечаток... Два запроса - сперва обновление, потом удаление.
10 янв 20, 14:44    [22056516]     Ответить | Цитировать Сообщить модератору
 Re: Апдейт похожих строк для оптимизации таблицы  [new]
Максим Гг.
Member

Откуда: Москва
Сообщений: 8
Akina, благодарю за ответ!
А можно подробнее насчёт апдейта? Не совсем понимаю как мне сравнивать строки, а затем объединять их в одну
С удалением проблем точно не возникнет, там легко.
10 янв 20, 16:27    [22056645]     Ответить | Цитировать Сообщить модератору
 Re: Апдейт похожих строк для оптимизации таблицы  [new]
Akina
Member

Откуда: Зеленоград, Москва, Россия
Сообщений: 20016
Максим Гг.
как мне сравнивать строки
WHERE t1.id != t2.id 
  AND LOCATE(t1.name, t2.name)
10 янв 20, 17:00    [22056675]     Ответить | Цитировать Сообщить модератору
 Re: Апдейт похожих строк для оптимизации таблицы  [new]
Максим Гг.
Member

Откуда: Москва
Сообщений: 8
Akina, таблица используется всего лишь одна, в вашем примере t1 и t2 =(


UPD: Понял
SELECT * FROM `tab` t1, `tab` t2 WHERE t1.id != t2.id AND LOCATE(t1.name, t2.name)

Вроде, выборка показала то что нужно, и можно дописывать апдейт. Не совсем пойму как в этом случае отработала функция LOCATE

Сообщение было отредактировано: 10 янв 20, 17:24
10 янв 20, 17:15    [22056690]     Ответить | Цитировать Сообщить модератору
Все форумы / MySQL Ответить