ホームページ > データベース > mysql チュートリアル > INSERT INTO...SELECT を使用して MySQL で 1 つのテーブルから別のテーブルにすべての列を正しく挿入する方法

INSERT INTO...SELECT を使用して MySQL で 1 つのテーブルから別のテーブルにすべての列を正しく挿入する方法

DDD
リリース: 2024-12-07 19:57:13
オリジナル
497 人が閲覧しました

How to Correctly Insert All Columns from One Table to Another in MySQL Using INSERT INTO...SELECT?

INSERT INTO...SELECT を使用してターゲット テーブルにすべての列を挿入します

ワイルドカード (*) を選択した INSERT INTO ステートメント。問題のトラブルシューティングを行い、有効な解決策を見つけてみましょう。

列名を指定せずに (*) を使用してすべての列を選択すると、エラーが発生します。 MySQL マニュアルで詳しく説明されているように、正しい構文では、列名を明示的にリストする必要があります。

正しいコードは次のとおりです:

INSERT INTO this_table_archive (col1, col2, ..., coln)
SELECT col1, col2, ..., coln
FROM this_table
WHERE entry_date < '2011-01-01 00:00:00';
ログイン後にコピー

col1、col2、...、coln を置き換えます。

ID 列に関しては、両方のテーブルに自動インクリメント ID があり、どちらかにデータがすでに存在する場合テーブルの場合、潜在的な重複キーの競合を避けるために、クエリの列リストから ID を省略することを検討してください。

空のターゲット テーブルの場合、この省略によって問題は発生しません。ただし、データを含むテーブルの場合、id 列を除外すると、コピーされた行に対して新しい一意の ID が確実に生成されます。

以上がINSERT INTO...SELECT を使用して MySQL で 1 つのテーブルから別のテーブルにすべての列を正しく挿入する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート