データの転送: ある SQL テーブルから別の SQL テーブルへの行の移動
最初の問題:
ユーザーは、特定の一致基準に基づいて、ある SQL テーブルから別の SQL テーブルにデータを転送することを目的としています。この特定のケースでは、クエリでは、条件「username = 'X'」および「password = 'X'」を満たすすべての行を Table1 から Table2 に移動する必要があります。その後、これらの行を Table1 から削除する必要があります。
技術的解決策:
このデータ移行を効率的に実行するには、単一の SQL 内で 2 段階のプロセスを使用できます。取引。これには、最初の挿入とその後の削除が含まれます。
BEGIN TRANSACTION; INSERT INTO Table2 (<columns>) SELECT <columns> FROM Table1 WHERE <condition>; DELETE FROM Table1 WHERE <condition>; COMMIT;
追加の考慮事項:
指定された基準に一致する新しいレコードが、挿入と削除のプロセスでは、より複雑なクエリを使用できます。
BEGIN TRANSACTION; INSERT INTO Table2 (<columns>) SELECT <columns> FROM Table1 WHERE <condition> AND NOT EXISTS (SELECT 1 FROM Table2 WHERE <condition>); DELETE FROM Table1 WHERE <condition>; COMMIT;
この追加により、元のTable1 の一致する行は Table2 に転送され、その後 Table1 から削除されます。
以上が一致基準に基づいて SQL 行を効率的に転送および削除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。