以下のクエリを使用して、2つのテーブル間でデータを移行しています。テーブルロックの問題が発生したため、テーブルエンジンをMyISAMからInnoDBに変更することを検討しています。どのテーブルでそれを行う必要がありますか?私が書いているテーブルだけですか、それとも私が書いているテーブルと私が読んでいるテーブルの両方ですか?
INSERT INTO table1 (
field1, field2, field2
)
SELECT
field1, field2,
(
SELECT
temp.field4
FROM
table1 AS temp
WHERE
temp.id = table2.id
ORDER BY
temp.something DESC
LIMIT
1
) + 1 AS field3
FROM
table2
WHERE
NOT EXISTS (
SELECT
1
FROM
table1 AS temp
WHERE
temp.id = table2.id
)