SQL 프로그래머스 문제 - 입양 시각 구하기(1)(중요!)
·
DataEngineering
WITH A AS( SELECTTO_CHAR(DATETIME, 'HH24') AS HOUR, COUNT(ANIMAL_ID) AS COUNTFROM ANIMAL_OUTS GROUP BY TO_CHAR(DATETIME, 'HH24')ORDER BY HOUR ASC)SELECT     CASE          WHEN HOUR = '09' THEN '9'          ELSE HOUR      END AS HOUR,     COUNT  FROM AWHERE HOUR >= 9  ; 1. DATE 형에서 시간만 가져오기 SELECT TO_CHAR(DATE 열 , 'HH24:MI:SS')  이때! DATE형으로 10시 아래 시각들은 09,08 이런식으로 0이 붙는다.이때, TO_NUMBER로 숫자형으로 바꿔준다..
SQL 프로그래머스 문제 - 가격대 별 상품 개수 구하기(중요!)
·
DataEngineering
SELECT        TRUNC(PRICE / 10000) * 10000 AS "PRICE_GROUP",       COUNT(PRICE) FROM PRODUCT GROUP BY     TRUNC(PRICE / 10000) * 10000 ORDER BY     PRICE_GROUP   1. 코드 흐름 중요 저기서 GROUP BY PRICE_GROUP을 하면 에러 난다.애초에 FROM PRODUCT -> GROUP BY -> SELECT 이 순서로 진행되는 듯 하다. 따라서 SELECT에서 정의된 PRICE GROUP을 인식할 수 없는 것. 대신, PRICE_GROUP을 만든 수식 그대로를 GROUP BY에 넣을 수 있다.  2. 구간을 만들 때  TRUNC(PRICE / 10000) * 10000 이..
SQL 프로그래머스 문제 - 진료과별 총 예약 횟수 출력하기
·
DataEngineering
SELECT  MCDP_CD AS 진료과코드, COUNT(APNT_NO) AS "5월예약건수" FROM APPOINTMENT  WHERE TO_CHAR(APNT_YMD, 'YYYY-MM') = '2022-05' GROUP BY MCDP_CD ORDER BY "5월예약건수" ASC, 진료과코드 ASC ;   1. ORDER BY할 때, AS로 해준 별칭 바로 사용해도 된다. 2. 별칭 정의할 때, 숫자가 맨 먼저 나오면 안된다.-> 숫자가 맨 처음 나올거면, "~"이렇게 쌍따옴표로 묶어줘야한다. 3. EXTRACT 대신 TO_CHAR를 활용하여 WHERE절에 사용할 수 있다.
HardConcentrator
Keep Calm And Carry on