https://www.hackerrank.com/challenges/draw-the-triangle-2/problem?isFullScreen=true
코드설명
LTERNATIVE QUERIES + CONNECT BY + RPAD 을 활용합니다.
아래의 코드를 설명해보면, 우선 CONNECT BY LEVEL <= 20 을 통해 LEVEL을 1부터 20까지 실행시킵니다.
그리고 RPAD 함수(시작문자열, 총 길이, RIGHT에 붙일 문자열 형태)를 실행시킵니다.
공백까지 포함되므로 사실상 '* '는 1이 아니라 2의 길이라는 점을 유의하면서 풀면 이해할 수 있습니다.
별표가 1개, 2개, 3개 증가하는 모습이 LEVEL과 동일하게 증가하는 것을 알 수 있습니다.
ORACLE 코드
SELECT RPAD('* ', LEVEL * 2, '* ') AS PATTERN
FROM DUAL
CONNECT BY LEVEL <= 20;