質問

同じテーブルの別の列の最小列に基づいて、テーブルの列を更新したいと思います。

例えば。

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/).

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top