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절에 사용할 수 있다.
SQL 프로그래머스 문제 - 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기
·
DataEngineering
SELECT CAR_TYPE, COUNT(CAR_ID) AS CARS FROM CAR_RENTAL_COMPANY_CARWHERE OPTIONS LIKE '%통풍시트%'     OR OPTIONS LIKE '%열선시트%'     OR OPTIONS LIKE '%가죽시트%'                  GROUP BY CAR_TYPE ORDER BY CAR_TYPE ASC ;  1. 하나의 열 기준, 여러 element가 들어있는지 확인하는 방법-> LIKE가 가장 편한 듯 하다. -> 저렇게 OR을 잘 사용하면 되는 것 같다.
SQL 프로그래머스 문제 - 동명 동물 수 찾기
·
DataEngineering
WITH A AS( SELECT NAME, COUNT(NAME) AS COUNT FROM ANIMAL_INS  WHERE NAME IS NOT NULL  GROUP BY NAME ORDER BY NAME ) SELECT * FROM A WHERE COUNT >= 2 ;   1. 저게 일단 인라인 뷰로 테이블을 만들어놓고, 거기다가 WHERE로 조건을 걸어야 한다. 2. GROUP BY는 GROUP 을 만들고 그 그룹에다가 다중행 연산을 위해 사용한다고 일단은 정리하자. 그래야 안헷갈림. 3. ORDER는 어지간하면 중복해서 들어가지 않게 하자. ORDER 명령 수행하는데 computing power 많이 사용. WITH 절 내에서 정렬 제거: WITH 절 안에서 정렬을 수행하지 않고, 필요한 경우 메인 ..
SQL 프로그래머스 문제 - 상위 n개 레코드
·
DataEngineering
SELECT NAME, DATETIME FROM (     SELECT NAME, DATETIME     FROM ANIMAL_INS     ORDER BY DATETIME ASC ) WHERE ROWNUM     1. 상위N개 뽑기 ROWNUM 사용: SELECT * FROM your_table WHERE ROWNUM 위의 쿼리는 테이블에서 처음부터 N개의 행을 선택합니다. 상위 N개의 행을 선택할 때 주의할 점은 행의 순서가 명시적으로 정의되어 있지 않는 한, 결과가 일관되지 않을 수 있다는 것입니다. 특정 순서로 상위 N개의 행을 선택하려면 ORDER BY 절과 함께 사용해야 합니다.  이때 주의!!! 순서 매우 중요!! SELECT NAME, DATETIME FROM ANIMAL_INS WHERE..
SQL 프로그래머스 문제 - 강원도에 위치한 생산공장 목록 출력하기
·
DataEngineering
SELECT FACTORY_ID, FACTORY_NAME, ADDRESS FROM FOOD_FACTORY  WHERE ADDRESS LIKE ('강원도%') ORDER BY FACTORY_ID ASC ;   1. LIKE WHERE 열이름 LIKE ('강원도%')-> 이렇게 괄호 쳐도 되고 안쳐도 된다.
SQL 프로그래머스 문제 - 인기있는 아이스크림
·
DataEngineering
SELECT FLAVOR FROM FIRST_HALF ORDER BY TOTAL_ORDER DESC,  SHIPMENT_ID ASC ;  1) ORDER BY에 여러 조건 있으면  ORDER BY TOTAL_ORDER DESC,  SHIPMENT_ID ASC 이렇게 ,로 DESC, ASC 구분해서 설정해주면 된다.
SQL 프로그래머스 문제 - 자동차 대여 기록에서 장기/단기 대여 구분하기
·
DataEngineering
SELECT      HISTORY_ID,      CAR_ID,      TO_CHAR(START_DATE, 'YYYY-MM-DD') AS START_DATE,     TO_CHAR(END_DATE, 'YYYY-MM-DD') AS END_DATE,               CASE          WHEN END_DATE - START_DATE + 1 >= 30 THEN '장기 대여'         ELSE '단기 대여'     END AS RENT_TYPE      FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY WHERE EXTRACT(YEAR FROM START_DATE) = 2022 AND  EXTRACT(MONTH FROM START_DATE) = 9 ORDER BY HI..
HardConcentrator
'DataEngineering' 카테고리의 글 목록 (3 Page)