タイトルが質問を正確に説明していない場合はお詫びします(おそらく説明していません)。私は次の2つのテーブルを持っています:-
tLiveTable:
PieceID LocationRef
------------------------
100 5
tPieceTable:
ID BatchNo PieceNumber
------------------------------
50 ABC X1
100 ABC X1
BatchNoとPieceNoのみを指定して、tLiveTableでそのピースのLocationRefを更新するにはどうすればよいですか?
私は次のことを試しました:
UPDATE tLiveTable
SET LocationRef = 'blabla unimportant'
WHERE
PieceID = (SELECT ID FROM tPieceTable WHERE (BatchNo = 'ABC') AND (PieceNo = 'X1'))
ただし、tPieceTableには、同じBatchNoとPieceNoを持つ複数のエントリが存在する可能性があります。IDが現在tLiveTableにあるものであるtPieceTableからのみIDを取得したい。
これには本当にINNERJOINを使用する必要がありますか?