@radio_mus

Как изменить ячейку значением другой ячейки?

Здравствуйте. Пытаюсь сделать автозамену в пустых ячейках 'city', присвоив им значение из соседней ячейки 'region'. То есть, если ячейка 'city' пустая, то записать в нее значение из ячейки 'region'.

Пробовал напрямую sql запросом:
UPDATE `users` SET `city`=`region` WHERE `city` = ''


Также пробовал через php:
$result = mysql_query("SELECT * FROM `users`",$link); 

    if (mysql_num_rows($result) > 0) {
        $row = mysql_fetch_array($result);

             do{
                if($row["city"] == '') {
                  $result2 = mysql_query("UPDATE `users` SET `city` = {$row["region"]}");  
                }
                else continue; 
               }
             while ($row = mysql_fetch_array($result));
        }


Подскажите пожалуйста, в чем моя ошибка, или может есть способ намного проще?
  • Вопрос задан
  • 191 просмотр
Решения вопроса 1
kimono
@kimono
Web developer
По-моему нельзя делать апдейт на табличке, забивая данные из нее же. Попробуйте так:
UPDATE `users` tbl1, `users` tbl2 SET tbl1.`city` = tbl2.`region` WHERE tbl1.`city` = ''
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
webinar
@webinar Куратор тега PHP
Учим yii: https://youtu.be/-WRMlGHLgRg
А вы уверены, что
$row["city"] == ''
может там:
$row["city"] == null
ил например так:
empty($row["city"])
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы