php mysql обновляет и перераспределяет все строки - PullRequest
0 голосов
/ 27 июня 2018

Я хотел обновить таблицу MySQL с определенными правилами. У меня есть, скажем, 3 столбца: ID, Name, Checked, и я хочу обновить Name для всех строк одинаково, где Checked = 0. В другой таблице у меня есть список «Имена», откуда я беру свои имена.

Возможно ли это сделать с одним UPDATE запросом, или мне нужно использовать какой-то цикл? Будет ли проблема, если, скажем, у меня есть 11 строк для обновления, но у меня есть 10 имен, как запрос обновляет эти поля.

1 Ответ

0 голосов
/ 02 июля 2018

Я нахожу решение:

UPDATE `table` SET `ID` = (select `ID` from `name` ORDER BY rand() LIMIT 1) WHERE `Lock_ID` = 0

Этот запрос будет случайным образом использовать имя из другой таблицы и обновлять его (это 99% правильное решение), он будет перераспределять имена почти одинаковые для каждой строки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...