やるまえから結果が見えてる試みではあるんですが。最近SQLを再勉強するにあたり、SQLてのは、手続き的にループ回すのに比べて集合to集合の演算の方が圧倒的に早い、というのを改めて認識した。なので、このエントリはそれを実感するのが目的です。 やったこと 環境はOracle 11g XEを使用。 FROM側とTO側のデータを入れるテーブルを作る。FROM側には100万件レコードを入れておく。 CREATE TABLE FROM_A_TBL (CLM VARCHAR2(16)); CREATE TABLE TO_A_TBL (CLM VARCHAR2(16)); FROMテーブルをカーソルでループしながらTOテーブルに1件ずつINSERTするPL/SQLを作る。 create or replace PROCEDURE TO_WITH_CURSOR IS CURSOR C1 IS SELECT C