Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
Tags
- MATLAB
- 티스토리
- 블로그
- 월간결산
- Python
- 통계학
- python visualization
- MySQL
- Linux
- 딥러닝
- SQL
- 파이썬 시각화
- 매틀랩
- 리눅스
- matplotlib
- Google Analytics
- Blog
- 서평
- 한빛미디어서평단
- 텐서플로
- Pandas
- 한빛미디어
- tensorflow
- 파이썬
- Visualization
- 서평단
- Tistory
- 독후감
- Ga
- 시각화
Archives
- Today
- Total
pbj0812의 코딩 일기
[SQL] 전화번호 전처리 하기 본문
0. 목표
- 불규칙하게 저장된 전화번호 전처리 하기
1. 실습
1) 테이블 생성
CREATE TABLE Number_test
(
Id INT,
PhoneNumber VARCHAR(30)
);
2) 데이터 삽입
INSERT INTO Number_test(Id, PhoneNumber) VALUES(1, '012-123-1234');
INSERT INTO Number_test(Id, PhoneNumber) VALUES(2, '012-1234-1234');
INSERT INTO Number_test(Id, PhoneNumber) VALUES(3, '0121231234');
INSERT INTO Number_test(Id, PhoneNumber) VALUES(4, '01212341234');
3) 확인
SELECT * FROM Number_test;
- 결과

4) REPLACE 처리 확인
SELECT Id, REPLACE(PhoneNumber, '-', '') AS PhoneNumber
FROM Number_test;
- 결과

5) 길이에 따른 전처리
SELECT
A.Id,
CASE LENGTH(A.PhoneNumber)
WHEN 11 THEN CONCAT(LEFT(A.PhoneNumber, 3), '-', MID(A.PhoneNumber, 4, 4), '-', RIGHT(A.PhoneNumber, 4))
WHEN 10 THEN CONCAT(LEFT(A.PhoneNumber, 3), '-', MID(A.PhoneNumber, 4, 3), '-', RIGHT(A.PhoneNumber, 4))
END AS PhoneNumber
FROM (
SELECT Id, REPLACE(PhoneNumber, '-', '') AS PhoneNumber
FROM Number_test
) AS A;
- 결과

2. 참고
- [MySQL] 문자열 길이 가져오기 (LENGTH, CHAR_LENGTH 함수)
'ComputerLanguage_Program > SQL' 카테고리의 다른 글
[SQL] MySQL 에서 FULL JOIN (0) | 2021.02.03 |
---|---|
[SQL] MySQL 조회 결과 csv 파일로 만들기 (0) | 2020.11.11 |
[SQL] LAG 함수를 이용한 전일대비 증가분 계산 (0) | 2020.11.03 |
[SQL] not in 과 left join 연산 시간 비교 실험(2/2) (0) | 2020.10.15 |
[SQL] not in 과 left join 연산 시간 비교 실험(1/2) (0) | 2020.10.15 |
Comments