[프로그래머스][SQL] 조건에 맞는 사용자 정보 조회하기

2024. 6. 10. 23:19·PS/SQL

https://school.programmers.co.kr/learn/courses/30/lessons/164670

 

프로그래머스

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

programmers.co.kr


문제 설명

  • Lv 3 문제
  • 중고거래 게시물을 3건 이상 등록한 사용자 정보 조회
  • 사용자 ID, 닉네임, 전체 주소, 전화번호
  • 전체 주소는 시 + 도로명주소 + 상세주소 , 전화번호 xxx-xxxx-xxxx  형식으로 출력
  • 결과는 회원 ID 기준으로 내림차순 정렬

 

 

 

 

문제 풀이

SELECT USER_ID, 
       NICKNAME, 
       CONCAT(CITY, ' ', STREET_ADDRESS1, ' ', STREET_ADDRESS2) AS '전체주소', 
       CONCAT(LEFT(TLNO, 3), '-', SUBSTR(TLNO, 4, 4) ,'-', RIGHT(TLNO, 4)) AS '전화번호'
FROM USED_GOODS_USER
WHERE USER_ID IN (SELECT WRITER_ID
                  FROM USED_GOODS_BOARD
                  GROUP BY WRITER_ID
                  HAVING COUNT(*) >= 3)
ORDER BY USER_ID DESC;

 

◼️ 서브쿼리로 사용자 ID 별 게시물을 3건 이상 등록한 사용자 ID 구하기

    -  서브쿼리에서 WRITER_ID 칼럼으로 그룹화한 후, WRITER_ID 별로 등록한 게시물이 3건 이상인 WRITER_ID 만 추출

    -  메인쿼리에서 서브쿼리의 WRITER_ID와 일치하는 USER_ID 정보만 추출

 

◼️ CONCAT 함수를 사용해서 전체주소, 전화번호를 주어진 형식에 맞게 출력

    -  CONCAT 함수: 여러 문자열을 입력한 순서대로 합쳐서 반환해주는 함수

    -  전체주소는 'CITY(시) STREET_ADDRESS1(도로명 주소) STREET_ADDRESS2(상세 주소)'  

    -  전화번호는 'xxx-xxxx-xxxx'

    - TLNO 컬럼은 -(하이픈)이 없기 때문에 문자열을 잘라서 사용해야 한다.

       이때, LEFT, RIGHT 함수를 사용해서 양 옆 3자리, 4자리 숫자를 자르고, SUBSTR 함수를 사용해서 중간 4자리 숫자를 자른다.

 

◼️ ORDER BY 로 회원 ID 기준 내림차순으로 정렬

저작자표시 비영리 변경금지 (새창열림)

'PS > SQL' 카테고리의 다른 글

[프로그래머스][SQL] 자동차 종류 별 특정 옵션이 포함된 자동차 수 구하기  (0) 2024.06.18
[프로그래머스][SQL] 조건에 부합하는 중고거래 상태 조회하기  (0) 2024.06.18
[프로그래머스][SQL]업그레이드 할 수 없는 아이템 구하기  (0) 2024.06.11
[프로그래머스][SQL] 자동차 평균 대여 기간 구하기  (0) 2024.06.09
[프로그래머스][SQL] 프로그래머스 SQL 문제 풀이 (1)  (0) 2024.06.04
'PS/SQL' 카테고리의 다른 글
  • [프로그래머스][SQL] 조건에 부합하는 중고거래 상태 조회하기
  • [프로그래머스][SQL]업그레이드 할 수 없는 아이템 구하기
  • [프로그래머스][SQL] 자동차 평균 대여 기간 구하기
  • [프로그래머스][SQL] 프로그래머스 SQL 문제 풀이 (1)
nyrimmm
nyrimmm
  • nyrimmm
    개발기록
    nyrimmm
  • 전체
    오늘
    어제
  • 글쓰기 관리
    • 분류 전체보기 (69)
      • Java (6)
      • Spring & SpringBoot (3)
      • Network (1)
      • DataBase (0)
      • SQL (1)
      • IntelliJ (3)
      • Git (0)
      • 자료구조 & 알고리즘 (2)
      • 트러블 슈팅 (1)
        • Spring (1)
      • PS (51)
        • 백준 (11)
        • 프로그래머스 (0)
        • SQL (9)
        • 이코테 (31)
      • 후기 & 회고 (1)
  • 태그

  • 인기 글

  • 최근 글

  • 최근 댓글

  • hELLO· Designed By정상우.v4.10.3
nyrimmm
[프로그래머스][SQL] 조건에 맞는 사용자 정보 조회하기
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.