Growth Hoon

20230918_TIL_ 프로그래머스 SQL 문제 { SQL 고득점 Kit : SELECT 문제 - 위에서 6번부터 끝까지} 본문

TIL_Today I Learned

20230918_TIL_ 프로그래머스 SQL 문제 { SQL 고득점 Kit : SELECT 문제 - 위에서 6번부터 끝까지}

sayhoon 2023. 9. 18. 18:03

3월에 태어난 여성회원 목록 출력하기

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT MEMBER_ID,MEMBER_NAME,GENDER, DATE_FORMAT(DATE_OF_BIRTH,"%Y-%m-%d")
    FROM MEMBER_PROFILE 
    WHERE DATE_OF_BIRTH LIKE '%-03-%' AND GENDER = 'W' AND TLNO IS NOT NULL 
    ORDER BY MEMBER_ID ASC;

서울에 위치한 식당 목록 출력하기

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT I.REST_ID, I.REST_NAME, I.FOOD_TYPE, I.FAVORITES, I.ADDRESS, ROUND(AVG(R.REVIEW_SCORE),2) SCORE
    FROM REST_INFO I
        INNER JOIN REST_REVIEW R
        ON I.REST_ID = R.REST_ID
    WHERE I.ADDRESS LIKE '서울%'
    GROUP BY I.REST_NAME
    ORDER BY ROUND(AVG(R.REVIEW_SCORE),2) DESC, I.FAVORITES DESC;

 

흉부외과 혹은 일반외과 의사 목록 출력하기

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT  DR_NAME,DR_ID,MCDP_CD, DATE_FORMAT(HIRE_YMD,'%Y-%m-%d')
    FROM DOCTOR
    WHERE MCDP_CD IN ('CS','GS')
    ORDER BY HIRE_YMD DESC, DR_NAME ASC;

평균 일일 대여 요금 구하기

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT ROUND(AVG(DAILY_FEE),0) AVERAGE_FEE
    FROM CAR_RENTAL_COMPANY_CAR 
    WHERE CAR_TYPE = 'SUV'
    GROUP BY CAR_TYPE

12세 이하인 여자 환자 목록 출력하기

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT PT_NAME,PT_NO,GEND_CD,AGE, IFNULL(TLNO,"NONE")
    FROM PATIENT
    WHERE AGE <= 12 AND GEND_CD ='W'
    ORDER BY AGE DESC, PT_NAME ASC;
-- CASE 사용한 SQL 코드
SELECT 
    PT_NAME,
    PT_NO,
    GEND_CD,
    AGE,
    CASE 
        WHEN TLNO IS NULL THEN 'NONE'
        ELSE TLNO
    END
    
FROM PATIENT
WHERE AGE <= 12 AND GEND_CD ='W'
    
ORDER BY AGE DESC, PT_NAME ASC;
-- IF문 사용
SELECT 
    PT_NAME,
    PT_NO,
    GEND_CD,
    AGE,
    IF(TLNO IS NULL, "NONE",TLNO)
    
FROM PATIENT
WHERE AGE <= 12 AND GEND_CD ='W'
    
ORDER BY AGE DESC, PT_NAME ASC;

모든 레코드 조회하기

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT *
FROM ANIMAL_INS 
ORDER BY ANIMAL_ID

재구매가 일어난 상품과 회원 리스트 구하기

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

SELECT USER_ID, PRODUCT_ID
    FROM ONLINE_SALE
    GROUP BY USER_ID, PRODUCT_ID
        HAVING COUNT(PRODUCT_ID) > 1
    
    ORDER BY USER_ID ASC, PRODUCT_ID DESC;

온라인/오프라인 판매 데이터 통합하기

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT 
    DATE_FORMAT(SALES_DATE,"%Y-%m-%d") SALES_DATE,
    PRODUCT_ID,
    USER_ID,
    SALES_AMOUNT
    
    FROM ONLINE_SALE
    WHERE SALES_DATE LIKE "2022-03%"

UNION ALL

SELECT 
    DATE_FORMAT(SALES_DATE,"%Y-%m-%d") SALES_DATE,
    PRODUCT_ID,
    NULL,
    SALES_AMOUNT
    
    FROM OFFLINE_SALE 
    WHERE SALES_DATE LIKE "2022-03%"
    
ORDER BY SALES_DATE ASC, PRODUCT_ID ASC, USER_ID ASC

참조한 사이트 : 오라클에서 존재하지 않는 COLUMN UNION하기


역순 정렬하기

 

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT NAME,DATETIME
    FROM ANIMAL_INS 
    ORDER BY ANIMAL_ID  DESC;

 

아픈 동물 찾기

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT ANIMAL_ID,NAME
    FROM ANIMAL_INS
    WHERE INTAKE_CONDITION = 'Sick'
    ORDER BY ANIMAL_ID

어린 동물 찾기

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT ANIMAL_ID,NAME
    FROM ANIMAL_INS
    WHERE INTAKE_CONDITION != 'AGED'
    ORDER BY ANIMAL_ID

동물의 아이디와 이름

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT ANIMAL_ID,NAME
    FROM ANIMAL_INS 
    ORDER BY ANIMAL_ID

여러 기준으로 정렬하기

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT ANIMAL_ID,NAME,DATETIME 
    FROM ANIMAL_INS 
    ORDER BY  NAME ASC, DATETIME DESC;

상위 n개의 레코드

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT NAME
    FROM ANIMAL_INS
    ORDER BY DATETIME ASC
    LIMIT 1

조건에 맞는 회원수 구하기

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

SELECT COUNT(USER_ID) USERS
    FROM USER_INFO
    WHERE (JOINED LIKE "2021%") AND (AGE BETWEEN 20 AND 29)