Notice
Recent Posts
Recent Comments
Link
250x250
| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | |
| 7 | 8 | 9 | 10 | 11 | 12 | 13 |
| 14 | 15 | 16 | 17 | 18 | 19 | 20 |
| 21 | 22 | 23 | 24 | 25 | 26 | 27 |
| 28 | 29 | 30 |
Tags
- web
- MySQL
- jpa
- spring
- 프론트엔드
- BACK-END
- 코드테스트
- 프로그래머스
- JavaScript
- 쿼리
- 정리
- 서버
- 스프링
- node.js
- 오라클
- SQL
- 미니정리
- java
- Next.js
- 프런트엔드
- 스프링부트
- 자바
- oracle
- 자바스크립트
- 알고리즘
- 코드 테스트
- 백엔드
- jsp
- 디자인 패턴
- 데이터베이스
Archives
- Today
- Total
참치코더의 꿈 메모장
MYSQL / 조건에 맞는 사용자 정보 조회하기 - 프로그래머스 본문
728x90

|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
SELECT
u.USER_ID,
u.NICKNAME,
CONCAT(u.CITY, ' ', u.STREET_ADDRESS1, ' ', u.STREET_ADDRESS2) AS 전체주소,
CONCAT(
SUBSTRING(u.TLNO, 1, 3), '-',
SUBSTRING(u.TLNO, 4, 4), '-',
SUBSTRING(u.TLNO, 8)
) AS 전화번호
FROM USED_GOODS_USER u
JOIN USED_GOODS_BOARD b
ON u.USER_ID = b.WRITER_ID
GROUP BY
u.USER_ID,
u.NICKNAME,
u.CITY,
u.STREET_ADDRESS1,
u.STREET_ADDRESS2,
u.TLNO
HAVING COUNT(b.BOARD_ID) >= 3
ORDER BY u.USER_ID DESC;
|
cs |
- USED_GOODS_BOARD 와 USED_GOODS_USER 테이블에서 중고 거래 게시물을 3건 이상 등록한
사용자의 사용자 ID, 닉네임, 전체주소, 전화번호를 조회하는 SQL을 작성하는 문제이다.
- USED_GOODS_USER와 USED_GOODS_BOARD를 사용하여 공통값인 USER_ID값을 사용해 조인을 하면
전체 회원의 중고 거래 게시물 등록한 전체 값이 나오게 된다.
- 해당 값에서 GROUP BY를 사용하여 묶어서 사용할 값을 선택하여 COUNT 값이 3건 이상인 데이터를 조회한 후
SELECT절에서 구해야할 각각의 USER_ID, NICKNAME, 전체 주소의 값(CONCAT( ))으로 제작, 전화번호도
마찬가지로 CONCAT()으로 묶어서 나열하면 정답 데이터 값을 얻을 수 있다.
- 마지막으로 ORDER BY를 USER_ID 를 기준으로 내림차순 정렬한다면 정답을 얻을 수 있다. ^^
728x90
'MYSQL' 카테고리의 다른 글
| MYSQL / OFFSET 미니정리 (페이지 네이션) (0) | 2026.01.26 |
|---|---|
| MYSQL / DELETE , 제약조건(constraint) 미니 정리 (0) | 2026.01.23 |
| MYSQL / ALTER, INSERT, UPDATE 미니 정리 (1) | 2026.01.18 |
| MYSQL / CREATE TABLE (테이블 생성) 미니 정리 (0) | 2026.01.16 |
| MYSQL / 기본 문법 미니 정리 (C,R,U,D) (0) | 2026.01.15 |
Comments