ステートメントにカーソルを使用します。
SELECT NAME FROM STUDENT WHERE ROLL = 1;
私が使用した:
CURSOR C IS SELECT NAME FROM STUDENT WHERE ROLL = roll;
--roll is a variable I receive via a procedure, and the procedure works fine for the received parameter.
これを実行すると、roll = 1 のすべてのレコードを取得できます。
ここで、次のように、グループのレコードを取得する必要があります(おそらくカーソルを介して)。
SELECT NAME FROM STUDENT WHERE ROLL IN (2, 4, 6);
ただし、IN 句の値は実行時にしかわかりません。どうすればいいですか?つまり、カーソルのWHERE句にパラメーターを割り当てる方法はありますか?
カーソルの宣言で配列を使用しようとしましたが、次のようなエラーがポップアップ表示されます: standard types cannot be used。
私が使用した:
CURSOR C IS SELECT NAME FROM STUDENT WHERE ROLL IN (rolls);
--rolls is an array initialized with the required roll numbers.