既存の行をコピーして新しい行を挿入することについて言及しているいくつかの質問があります。
この質問はそれに基づいていますが、実質的に異なります。
9000行以上のテーブルがあります。約10列あります。列1は、一意のキーである自動インクリメントです。
明らかに列1を除いて、既存の行の列10の値に基づいて変更される列10を除いて、既存の行からすべてをコピーすることによって、存在するのとまったく同じ数の行をテーブルに挿入したいと思います。既存の行で23である場合は52になり、既存の行で列10が25の場合は53になります。
したがって、基本的に、既存の行と新しい行の唯一の違いは、列10の値です(一意のIDは別として)。また、列10は非常に限られた数の値を取ります。
このようなものは機能しますか?
INSERT INTO mycooltable (col2, col3, col4, col5, col6, col7, col8, col9, col10)
SELECT col2, col3, col4, col5, col6, col7, col8, col9, 52
FROM mycooltable WHERE col10 = 23
INSERT INTO mycooltable (col2, col3, col4, col5, col6, col7, col8, col9, col10)
SELECT col2, col3, col4, col5, col6, col7, col8, col9, 53
FROM mycooltable WHERE col10 = 25