Oracle/SQL
SQL 알고리즘 ( 구구단 구현하기)
NO:LOO
2021. 12. 5. 20:39
select level as num
from dual
connect by level <=10;
-> 먼저 CONNECT BY 절로 1 부터 10 까지 출력 해보도록 한다.
구구단 2단 출력
with num_table as (select level as num
from dual
connect by level <=9)
select '2 * '||num||' = '|| 2*num
from num_table;
1 ~9 까지 출력 되는 테이블을 만들고 그 테이블을 바탕으로 2 단을 만든다.
문제 2단과 3단을 연달아서 밑으로 출력하시오
with num_table as (select level as num
from dual
connect by level <=9)
select '2 * '||num||' = '|| 2*num as 구구단
from num_table
union all
select '3 * '||num||' = '|| 3*num
from num_table;
문제 구구단 1_ 9 단 출력하기
with num_table as (select level as num
from dual
connect by level <=9),
num_table2 as ( select level as num2
from dual
connect by level <=9)
select n.num||' X '|| n2.num2 || ' = '|| n.num * n2.num2
from num_table n , num_table2 n2;
짝수단만 출력하기
with num_table as (select level as num
from dual
connect by level <=9),
num_table2 as ( select level as num2
from dual
connect by level <=9)
select n.num||' X '|| n2.num2 || ' = '|| n.num * n2.num2
from num_table n , num_table2 n2
where num in (2,4,6,8);
또는
with num_table as (select level as num
from dual
connect by level <=9),
num_table2 as ( select level as num2
from dual
connect by level <=9)
select n.num||' X '|| n2.num2 || ' = '|| n.num * n2.num2
from num_table n , num_table2 n2
where mod(num,2) =0;