Php обновить mysql и перераспределить все строки

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

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

да, это могло произойти, обновите таблицу на основе условия с использованием набора в другой таблице. вы можете искать здесь на SO stackoverflow.com/questions/11709043/…

Kevin 27.06.2018 11:41

Поле имени состоит из одного или нескольких значений? Было бы лучше, если бы вы могли опубликовать структуры таблиц Db для большей ясности.

Kishen Nagaraju 27.06.2018 11:41

Поле Name - это имена сотрудников. Список активных сотрудников указан в другой таблице. Поэтому каждый раз в месяц я хочу обновлять оставшуюся непроверенную строку с новыми сотрудниками и равномерно распределять.

rtstorm 27.06.2018 11:44
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
3
31
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

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

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

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

Другие вопросы по теме