본문 바로가기

코딩테스트/SQL

(25)
[프로그래머스] 조건에 맞는 사용자 정보 조회하기 https://school.programmers.co.kr/learn/courses/30/lessons/164670 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 방법 작성자 별 게시글 수 계산 > 두 테이블 JOIN > 게시글 수가 3 이상인 사용자 찾기 SELECT U.USER_ID, U.NICKNAME, CONCAT(U.CITY, ' ', U.STREET_ADDRESS1, ' ', U.STREET_ADDRESS2) AS "전체주소", CONCAT(SUBSTR(U.TLNO, 1, 3), '-', SUBSTR(U.TLNO, 4, 4), '-', S..
[프로그래머스] 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 https://school.programmers.co.kr/learn/courses/30/lessons/164671 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 방법 VIEWS 기준으로 내림차순 정렬 > 최상의 VIEWS에 위치한 BOARD_ID 조회 > 해당 BOARD_ID를 가지는 파일 찾기 SELECT CONCAT('/home/grep/src/', FILE.BOARD_ID, '/', FILE_ID, FILE_NAME, FILE_EXT) AS FILE_PATH FROM USED_GOODS_FILE WHERE BOARD_ID = ( SELECT ..
[프로그래머스] 가격대 별 상품 개수 구하기 https://school.programmers.co.kr/learn/courses/30/lessons/131530 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 나의 방법 CASE 사용, 만약 가격이 매우 크다면 직접 작성하기에 번거로움 SELECT CASE WHEN PRICE = 10000 AND PRICE = 20000 AND PRICE = 30000 AND PRICE < 40000..
[프로그래머스] 재구매가 일어난 상품과 회원 리스트 구하기 https://school.programmers.co.kr/learn/courses/30/lessons/131536 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT USER_ID, PRODUCT_ID FROM ( SELECT USER_ID, PRODUCT_ID, COUNT(*) AS AMOUNT FROM ONLINE_SALE GROUP BY USER_ID, PRODUCT_ID ) z WHERE AMOUNT > 1 ORDER BY USER_ID, PRODUCT_ID DESC 알아야 할 점 - SUB QUERY
[프로그래머스] 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기 https://school.programmers.co.kr/learn/courses/30/lessons/151137 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT CAR_TYPE, COUNT(*) AS CARS FROM CAR_RENTAL_COMPANY_CAR WHERE OPTIONS LIKE '%시트%' GROUP BY CAR_TYPE ORDER BY CAR_TYPE 알아야 할 점 - WHERE OPTIONS IN ('통풍시트', '열선시트', '가죽시트') 불가능 여러 개의 시트들이 함께 존재할 수 있기 때문
[프로그래머스] 자동차 평균 대여 기간 구하기 https://school.programmers.co.kr/learn/courses/30/lessons/157342 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT CAR_ID, ROUND(AVG(DATEDIFF(END_DATE, START_DATE) + 1), 1) AS AVERAGE_DURATION FROM CAR_RENTAL_COMPANY_RENTAL_HISTORY GROUP BY CAR_ID HAVING AVERAGE_DURATION >= 7 ORDER BY AVERAGE_DURATION DESC, CAR_ID DESC 알아야 할 점 -..
[프로그래머스] 조건에 부합하는 중고거래 상태 조회하기 https://school.programmers.co.kr/learn/courses/30/lessons/164672 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT BOARD_ID, WRITER_ID, TITLE, PRICE, CASE WHEN STATUS = 'SALE' THEN '판매중' WHEN STATUS = 'RESERVED' THEN '예약중' ELSE '거래완료' END AS STATUS FROM USED_GOODS_BOARD WHERE CREATED_DATE = '2022-10-05' ORDER BY BOARD_ID DESC 알아..
[프로그래머스] 중복 제거하기 https://school.programmers.co.kr/learn/courses/30/lessons/59408 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr SELECT COUNT(DISTINCT NAME) AS count FROM ANIMAL_INS WHERE NAME IS NOT NULL 알아야 할 점 - DISTINCT