알고리즘 & 코딩테스트
[프로그래머스 SQL 테스트] 입양 시각 구하기(2)
Haksae
2022. 4. 28. 20:12
프로그래머스에 SQL 테스트가 있길래 심심해서 쭉 한번 풀어봤는데, 거기서 몰랐던 부분이 있는 문제가 있어서 남겨봅니다.
[입양 시각 구하기 (2)]
👉🏻 답안
SET @HOUR= -1;
SELECT (@HOUR := @HOUR +1) AS HOUR,
(SELECT COUNT(*) FROM ANIMAL_OUTS WHERE HOUR(DATETIME) = @HOUR) AS COUNT
FROM ANIMAL_OUTS
WHERE @HOUR < 23
📑 설명
- SET
- 어떤 특정한 값을 할당할 떄 쓰는 명령어
- @가 붙은 변수는 프로시저가 종료되어도 유지된다.
- 이를 통해 값을 누적하여 0부터 23까지 표현 가능
- := 은 비교 연산자 =과 혼동을 피하기 위한 대입 연산
- SELECT(@HOUR := @HOUR+1)은 @HOUR의 값에 1씩 증가시키면서 SELECT 문 전체를 실행하게됨