powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / MySQL [игнор отключен] [закрыт для гостей] / ускорить запрос
6 сообщений из 6, страница 1 из 1
ускорить запрос
    #39765463
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть 2 таблицы
таблица 1
idname1test12test23test3
таблица 2
id category1 category21test1test332test11test33test2test22
задача - в таблице 2 заменить все имена категорий на ид категорий из т1
для этого каждую категорию из таблицы 2 надо создать в таблице1 (или если уже есть категория то получить ид)
счас делаю так-таблица 2 беру уникальные колонки,в цикле перебираю,получаю ид из таблица 1,если ид= 0 то делаю инсерт
затем заменяю имя категории на ид
проблема- очень медленно работает,думал будет гораздо быстрее
7000 категорий обрабатывает 15минут
...
Рейтинг: 0 / 0
ускорить запрос
    #39765464
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tadeyiloda,

При этом вы в строковое поле пишите числа?
...
Рейтинг: 0 / 0
ускорить запрос
    #39765467
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,

да
...
Рейтинг: 0 / 0
ускорить запрос
    #39765471
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tadeyilodamiksoft,

даНапрасно. Лучше бы сделать отдельные числовые поля.

Но вообще задача решается одни запросом без всяких циклов.
См. пример в доке:
https://dev.mysql.com/doc/refman/5.7/en/update.html UPDATE items,month SET items.price=month.price
WHERE items.id=month.id;
...
Рейтинг: 0 / 0
ускорить запрос
    #39765473
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
возможно добавлю целые поля
в примере как обработать ситуацию добавления новой категории?
...
Рейтинг: 0 / 0
ускорить запрос
    #39765489
tadeyiloda
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
разобрался
...
Рейтинг: 0 / 0
6 сообщений из 6, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / ускорить запрос
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]