https://school.programmers.co.kr/learn/courses/30/lessons/164670
프로그래머스
SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
SELECT
USER_ID, NICKNAME,
CONCAT(CITY, ' ',STREET_ADDRESS1, ' ',STREET_ADDRESS2) AS "전체주소",
CONCAT(SUBSTRING(TLNO, 1, 3), '-', SUBSTRING(TLNO, 4, 4), '-',
SUBSTRING(TLNO, 8, 11)) AS "전화번호"
FROM USED_GOODS_BOARD UGB
JOIN USED_GOODS_USER UGU ON UGB.WRITER_ID = UGU.USER_ID
GROUP BY USER_ID
HAVING COUNT(*) >= 3
ORDER BY USER_ID DESC;
여기서 집고 넘어 갈 것
SUBSTRING
나는 SUBSTRING을 어떻게 쓰는지 잘 몰랐었다. SUBSTRING(Column, 문자열 시작위치, 시작위치부터 얼마까지(길이))를 나타낸다. 나는 SUBSTRING(Column, 문자열 시작위치, 잘라낼 문자열 위치))를 말 하는 줄 알았다. 엄밀히 따지면 내가끈 쿼리 SUBSTRING(TLNO, 8, 11) 이 부분이 이상하다고 생각 할 수 있다. 11이라는 숫자가 마지막 문자열을 넘어서 상관 없다고 한다
SUBSTRING(TLNO, 8, 4) 이렇게 적으면 더 깔끔하긴 할 듯!
'MYSQL > 프로그래머스 LV03' 카테고리의 다른 글
대여 기록이 존재하는 자동차 리스트 구하기 (0) | 2025.03.04 |
---|---|
조건에 맞는 사용자와 총 거래금액 조회하기 (0) | 2025.03.04 |
업그레이드 할 수 없는 아이템 구하기 (0) | 2025.03.04 |
조회수가 가장 많은 중고거래 게시판의 첨부파일 조회하기 (0) | 2025.03.04 |
부서별 평균 연봉 조회하기 (0) | 2025.03.04 |