oracle - Using the data from a for loop as a table in the From in a Select -


i converting code in access on oracle, , 1 of queries in access uses table unable use in oracle. unable create new tables, trying figure out way use logic behind table in section of select.

the logic of table similar to:

for = 1 100     number = number + 1     .addnew     !tbl_number = number next 

i'm trying convert oracle, , far have:

for in 1 .. 100 loop    number := number + 1;    --this stuck; how simulate table part end loop; 

i thinking cursor or record answer, can't seem figure out how implement that. in end want have:

select    table.number    (      --my loop logic    ) table 

edit

the calculation bit more complicated; example. aren't sequential, , there isn't pattern rows.

edit

here more complicated version of loop closer i'm doing:

for in 1 .. 100 loop     number1 := number1 + 7;    number2 := (number2 + 8) / number1;    --this stuck; how simulate table part end loop; 

you use recursive query (assuming on oralce 11gr2 or later):

with example(idx, number1, number2) (   -- anchor section   select 1        , 1 -- initial value        , 2 -- initial value     dual    union    -- recursive section   select prev.idx + 1        , prev.number1 + 7        , (prev.number2 + 8) / prev.number1     example prev    prev.idx < 100  -- guard ) select * example; 

in anchor section set values first record. in recursive section setup logic determine next records values function of prior records values.

the anchor section select initial values other table rather being hard coded in example.

the recursive section needs select named subquery (in case example) may join other tables needed.


Comments