MySQL: обновить поле с Group By - PullRequest
       2

MySQL: обновить поле с Group By

2 голосов
/ 22 августа 2011

это пример:

схема таблицы mysql:

 id   name   salary
 1    david   20 
 2    jack    30
 3    david   10 

Запрос:


$sql = "UPDATE table SET salary = salary  + 5 WHERE name = 'david' ";

Я хочу добавить Group By name, чтобы избежать дублирования обновления для david Как я могу это сделать?

1 Ответ

2 голосов
/ 22 августа 2011

Попробуйте использовать LIMIT, который является расширением для SQL, используемого MySQL:

$sql = "UPDATE table SET salary = salary  + 5 WHERE name = 'david' 
        ORDER BY id LIMIT 1";

Нет смысла использовать GROUP BY, потому что было бы неоднозначно, обновлять ли первую строку в группе,или последний ряд, или все строки.MySQL не поддерживает предложение GROUP BY в инструкции UPDATE.

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