Beispiel: Es gibt einen Tisch "ID_NAME" mit einer Spalte "ID", die wie 1,2,3 2000 Einträge haben .. 2000. Ich habe habe eine AbfrageWie speichert man eine Ergebnismenge einer ORACLE-SQL-Abfrage?
select id aus ID_NAME where id < 1001;
> Result : 1 2 3 4 . .1000
Mein PL SQL-Block wie folgt aussieht,
SET SERVEROUTPUT ON;
declare
var1 number;
var2 number;
var3 number;
var4 number;
var5 number;
var6 number;
var7 number;
var8 number;
var9 number;
var10 number;
begin
with set1 as (select id from ID_NAME where id < 1001)
select count(*) into var1 from table1 where id in (select * from set1);
select count(*) into var2 from table2 where id in (select * from set1);
select count(*) into var3 from table3 where id in (select * from set1);
select count(*) into var4 from table4 where id in (select * from set1);
select count(*) into var5 from table5 where id in (select * from set1);
select count(*) into var6 from table6 where id in (select * from set1);
select count(*) into var7 from table7 where id in (select * from set1);
select count(*) into var8 from table8 where id in (select * from set1);
select count(*) into var9 from table9 where id in (select * from set1);
select count(*) into var10 from table10 where id in (select * from set1);
DBMS_OUTPUT.PUT_LINE('var1,var2,var3,var4,var5,var6,var7,var8,var9,var10');
DBMS_OUTPUT.PUT_LINE(var1||','||var2||','||var3||','||var4||','||var5||','||var6||','||var7||','||var8||','||var9||','||var10);
end;
aber ich bin immer
PL/SQL: ORA-00942: Tabelle oder Sicht sind nicht vorhanden
in meinem SQL-Entwickler.
Ich möchte die SET1 von meinem unten Abfrage verwenden, so dass ich es nicht laufen immer wieder in der count (*) Unterabfragen
with set1 as (select id from ID_NAME where id < 1001)