Oracle SQL #01 중복 값 추출

요구사항

테이블에서 컬럼의 중복된 값만 추출

1. GROUP BY 미 사용

SELECT *
FROM 테이블
WHERE 컬럼 IN(
SELECT 컬럼
FROM (
SELECT 컬럼, ROW_NUMBER() OVER(PARTITION BY 컬럼 ORDER BY NULL) AS 행번호
FROM 테이블
WHERE 행번호=’2′
)
ORDER BY 컬럼

2. GROUP BY 사용

SELECT *
FROM 테이블
WHERE 컬럼 IN(
SELECT 컬럼
FROM 테이블
GROUP BY 컬럼
HAVING COUNT(컬럼)>1
)
ORDER BY 컬럼

 

성능을 고려했을 때 GROUP BY를 사용하지 않는 것이 권고된다.

IMSI (International Mobile Subscriber Identity)

IMSI 개요

국제 모바일 가입자 식별자 (International Mobile Subscriber Identity) 또는 IMSI
ITU-T(국제전기통신연합 전기통신표준화부문)의 E.212 표준을 따름.

이동통신 네트워크에서 사용자를 구별하는데 사용되는 유일한 64bit 필드 구분자.
해당 IMSI 번호는 인터페이스에 따라 SIM 카드, R-UIM 카드, 전화기에 저장됨.

구성

MCC (Mobile Country Code) : 모바일 국가 코드 (3자리)

MNC (Mobile Network Code) : 모바일 네트워크 코드 (2 또는 3자리)
*한국 2자리

MSIN (Mobile Subscriber Identifier Number) : 모바일 가입자 식별 번호 (휴대폰 전화번호)

IMSI 숫자 표시의 예

IMSI:4500510123456789
MCC 450 대한민국
MNC 05 SK Telecom
MSIN 1012346789

분류 (대한민국)

MCC MNC Brand Operator Status Bands (MHz) References and notes
450 01 Globalstar Asia Pacific Operational Satellite [10]
450 02 KT KT Unknown 5G Test network;[10] former Hansol PCS (CDMA2000 1800), Merged with KT in 2002
450 03 Power 017 Shinsegi Telecom, Inc. Not operational CDMA2000 800 Merged with SK Telecom in 2002; MNC withdrawn[10]
450 04 KT KT Unknown Unknown IoT network;[10] former CDMA2000 1800
450 05 SKTelecom SK Telecom Operational CDMA2000 800 / UMTS 2100 / LTE 850 / LTE 1800 / LTE 2100 / LTE 2600
450 06 LG U+ LG Telecom Operational CDMA2000 1800 / LTE 850 / LTE 2100 / LTE 2600
450 07 KT KT Unknown Unknown [10]
450 08 olleh KT Operational UMTS 2100 / LTE 900 / LTE 1800 / LTE 2100
450 11 Korea Cable Telecom Operational MVNO MVNO of SK Telecom
450 12 SKTelecom SK Telecom Unknown Unknown IoT network[10]

 

MSISDN 비교

구분 IMSI MSIDN
표준 E.212 E.164
적용 영역 모바일 네트워크 공중교환전화망 (PSTN, public switched telephone network)
구성 IMSI = MCC + MNC + MSIN  MSISDN = CC + NDC + SN
450-05-10123456789 +82-02-12345678

cf.
MSISDN : Mobile Station International Subscriber Directory Number
CC : Country Code
NDC : National Destination Code
SN : Subscriber Number)

출처:
https://en.wikipedia.org/wiki/Mobile_country_code#K
https://ko.wikipedia.org/wiki/국제_모바일_가입자_구별자

Oracle DB 12c Client 설치 및 DB 접속

1. Oracle DB version 확인

Oracle DB 12c

2. 다운로드

link

3. 설치

*INS-30131 에러 발생 시
ins-30131
cmd 에서 다음과 같이 실행
‘client 설치 경로’\setup.exe -ignorePrereq -J”-Doracle.install.client.validate.clientSupportedOSCheck=false”

4. 개발 DB 접속정보 수령 (tnsnames.oRA 파일)

– 접속계정(사용자 이름)
– 비밀번호
– tnsnames.oRA 파일

*tnsnames.oRA 파일 내에 IP, Port, DB Name (SID) 정보가 있음.***=
(DESCRIPTION=
(ADDRESS=
(PROTOCOL=TCP)
(HOST=**.**.**.**)
(PORT=****)
)
(CONNECT_DATA=
(SERVICE_NAME=***)
)
)

 

5. tnsnames.oRA 파일 복사/붙여넣기

C:\app\client\Admin\product\12.1.0\client_1\network\admin\sample

위 경로에 tnsnames.oRA 파일 복사/붙여넣기

6. tnsnames 디렉토리 설정

도구 – 환경설정 – 데이터베이스 – 고급 – Tnsnames 디렉토리
C:\app\client\Admin\product\12.1.0\client_1\network\admin\sample 해당 경로 설정
tnsoraconfigure


7. SQL Developer 실행

 

8. DB 접속 정보 입력

dbaccess.png
– 접속 이름: 임의
– 사용자 이름 : 접속 계정 입력
– 비밀번호 : 비밀번호 입력
-Oracle : 접속 유형 – TNS – 네트워크 별칭 선택 – 테스트 – 접속

*접속 유형을 기본으로 설정 후 일일히 입력하는 방법도 가능
– 호스트 이름 : IP 주소
– 포트 : 포트
– SID : DB Names (SID)