異なるテーブルから複数の列を挿入する必要がありますが、同じ問題が発生し続けます。
問題は次のとおりです。TableA.ColumnA から TableB.ColumnA に問題なく列を INSERT できます。しかし、次に、TableC.columnA を TableB.columnB に INSERT する必要があります。この INSERT コマンドは、データの ID を変更する余分な行を追加します。
私の挿入コマンドと、一致する ID を取得するために実行していた UPDATE コマンド (失敗) を以下に示します。
insert コマンドで余分な行を追加できることは知っていますが、ID が一致するようにこれを渡すにはどうすればよいですか?
列に自動インクリメントが設定されている可能性があると思いましたが、設定されていないため、問題はないようです。どんな助けでも大歓迎です。
(1) INSERT INTO users_posts
(author_id,
post_id,
post_title)
SELECT contents.user_id, contents.id, contents.title
FROM contents
WHERE contents.id = id
(2) INSERT INTO users_posts
(post_content)
SELECT content_bodies.content
FROM content_bodies
WHERE content_bodies.id = id
(3) UPDATE users_posts
SET post_content = (SELECT content_bodies.content
FROM content_bodies
WHERE content_bodies.id = users_posts.post_id)