0

次の行を実行すると、ループ変数のインデックス (i) に対して「無効な識別子」というエラー メッセージが表示されるのはなぜですか?

SQL エラー: ORA-00904: "I": 識別子が無効です

for i in 1..5 loop
   select Price from Orders where (ID=i);
end loop;

Ordersは、ID と価格の 2 つのフィールドを持つテーブルです。

テーブルオーダー:

ID価格
------------
1 1200    
2 2250    
3 1750    
2000年4月    
5 1000    
6 300    
4

2 に答える 2

0

このようにしてください

DECLARE 
my_price long;
BEGIN
FOR I IN 1..5 loop
SELECT PRICE INTO MY_PRICE FROM ORDERS where id=i;
DBMS_OUTPUT.PUT_LINE('The price is'||' '||my_price);
end loop;
end;

OUTPUT
-------------------------------
The price is 1234
The price is 1235
The price is 1236
The price is 1237
The price is 1238

Statement processed.
于 2013-11-11T11:03:23.250 に答える