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), '-', SUBSTR(U.TLNO, 8, 4)) AS "전화번호"
FROM USED_GOODS_USER U
JOIN (
SELECT
WRITER_ID,
COUNT(*) AS "TOTAL_BOARD_CNT"
FROM USED_GOODS_BOARD
GROUP BY WRITER_ID
) Z
ON U.USER_ID = Z.WRITER_ID
WHERE Z.TOTAL_BOARD_CNT >= 3
ORDER BY U.USER_ID DESC
다른 방법
두 테이블 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), '-', SUBSTR(U.TLNO, 8, 4)) AS "전화번호"
FROM USED_GOODS_USER U
JOIN USED_GOODS_BOARD B
ON U.USER_ID = B.WRITER_ID
GROUP BY U.USER_ID
HAVING COUNT(U.USER_ID) >= 3
ORDER BY U.USER_ID DESC
알아야 할 점
- CONCAT
- SUBSTR
'코딩테스트 > SQL' 카테고리의 다른 글
[프로그래머스] 조건에 맞는 사용자와 총 거래금액 조회하기 (0) | 2023.07.17 |
---|---|
[프로그래머스] 서울에 위치한 식당 목록 출력하기 (0) | 2023.07.17 |
[프로그래머스] 조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 (0) | 2023.07.15 |
[프로그래머스] 가격대 별 상품 개수 구하기 (0) | 2023.07.14 |
[프로그래머스] 재구매가 일어난 상품과 회원 리스트 구하기 (0) | 2023.07.12 |