質問
同じテーブルの別の列の最小列に基づいて、テーブルの列を更新したいと思います。
例えば。
JobPositonId | JobPositonName | JobDescriptionId | ContactId
1 | 1 | 1 | 1
2 | 1 | 1 | 0
3 | 1 | 1 | 0
contactIDを1に更新したいのですが、それが0であり、jobpositionIDが最低の場合。
解決
私はこれがうまくいくべきだと思います:
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/).
所属していません StackOverflow