일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- SUM
- MySQL
- GROUPBY
- 전처리
- 파이썬
- PostgreSQL
- 그로스해킹
- mysql :=
- 데이터시각화
- 머신러닝
- hackerrank
- 데이터리안 웨비나
- having
- SQLite
- SQL
- 결측값
- seaborn
- not in
- Limit
- pandas
- Oracle
- 데이터분석
- Round
- matplotlib
- airflow 설치
- join
- 다중 JOIN
- solvesql
- TRUNCATE
- 프로그래머스
Archives
- Today
- Total
Milky's note
[HackerRank](E) Draw The Triangle 1 본문
https://www.hackerrank.com/challenges/draw-the-triangle-1/problem?isFullScreen=true
[문제]
P(R) represents a pattern drawn by Julia in R rows. The following pattern represents P(5):
* * * * *
* * * *
* * *
* *
*
Write a query to print the pattern P(20).
[답]
- mysql
set @star=21;
select repeat('* ', @star := @star-1)
from information_schema.tables
limit 20;
SQL 코딩 테스트 하면서 별찍기는 처음 본 문제이다.
일단 별찍기 반복을 해야하니까 repeat를 사용하였다.
그 다음에는 출력할 별의 갯수를 변수로 설정해주어야하고 (set @var)
이 별의 갯수를 반복이 지날 때마다 한개씩 줄어들기 때문에 위에서 설정한 변수를 변수-1에 대입하여 준다.(대입 연산자 :=)
처음에 21로 설정한 이유는 맨 첫줄에는 20개의 별이 찍혀야하기 때문이다.
마지막에 limit 20을 설정해준 이유는 총 20라인이 출력되어야하기 때문이다.
그리고 조건에 맞게 쿼리를 짰는데 계속 답이 틀렸다고 해서 잘 봤는데 별 사이에 간격이 있다......후..
그래서 '* ' 로 입력해주어야 한다. 출력 결과를 잘 보자 !!
'SQL > SQL 코딩 테스트-HackerRank' 카테고리의 다른 글
[HackerRank](M) New Companies (0) | 2022.03.28 |
---|---|
[HackerRank](E) Draw The Triangle 2 (0) | 2022.03.26 |
[HackerRank](M) The Report (0) | 2022.03.25 |
[HackerRank](E) Average Population of Each Continent (0) | 2022.03.25 |
[HackerRank](E) African Cities (0) | 2022.03.25 |
Comments