Обновление с Мин в таблице - PullRequest
0 голосов
/ 24 августа 2010

Я хочу обновить столбец в таблице, основываясь на минимуме другого столбца той же таблицы.

например.

JobPositonId | JobPositonName | JobDescriptionId | ContactId
1            | 1              | 1                | 1
2            | 1              | 1                | 0
3            | 1              | 1                | 0

Я хочу обновить ContactId до 1, если оно равно 0 и где JobPositionId является самым низким.

1 Ответ

1 голос
/ 24 августа 2010

Я думаю, что это должно работать:

update jobTable
   set contactid = 1
 where jobPostitionId in (select pos from (select min(jobPositionId) as pos from jobTable where contactId = 0) as subtable);

Это своего рода хак, похожий на то, что описано здесь (http://www.xaprb.com/blog/2006/06/23/how-to-select-from-an-update-target-in-mysql/).

...