私はこの問題に何時間も取り組んできましたが、役に立ちませんでした。複数の行を返すサブクエリに関連するstackoverflow.comの質問の多くを見てきましたが、私の場合に役立つものを見つけることができませんでした.
clientとpositionの 2 つのテーブルがあります。points.client_idをclient.id WHERE client.file_name = position.file_nameで更新しようとしています。
基本的に、クライアントに割り当てる必要があるポジションのリストがあります。すべてのクライアントには複数のポジションがありますが、すべてのポジションは正確に 1 人のクライアントに割り当てられます。つまり、client_idはpositionで一意ではありませんが、idは client で一意 (主キー)です。
これが私がさまざまなバリエーションを試してきたものです:
UPDATE positions
SET client_id = (SELECT clients.id
FROM clients
WHERE clients.file_name = positions.file_name)
戻ります。
1242 - サブクエリが複数の行を返す
助けてくれてありがとう!