본문 바로가기

프로그래머스/SQL

SQL- 조건에 맞는 사용자 정보 조회하기

SUBSTR(TLNO, 1, 3) || '-' || SUBSTR(TLNO, 4, 4) || '-' || SUBSTR(TLNO, 8, 4) AS "전화번호"

이 구문을 몰라 찾아보면서 문제를 해결했다. SUBSTR은 substring으로 문자열을 자르는 함수가 맞으며 인덱스가 0부터 시작하지 않는다는 점만 유의한다면

1번 째 String부터 세서 3자리로 짜르고 "||"는 연결 연산자로 자른 문자열과 '-'을 연결하는 역할을 하게된다.

이런 식으로 제일 어려운 난관이라고 생각한 전화번호만 클리어 해준다면 어렵지 않게 해결될 것이다.

<문제>

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

 

프로그래머스

SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

 


<소스코드>

SELECT 
  USER_ID, 
  NICKNAME, 
  CONCAT(CITY, CONCAT(' ', CONCAT(STREET_ADDRESS1, CONCAT(' ', STREET_ADDRESS2)))) AS "전체주소",
  SUBSTR(TLNO, 1, 3) || '-' || SUBSTR(TLNO, 4, 4) || '-' || SUBSTR(TLNO, 8, 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