inflearn logo
강의

講義

知識共有

さまざまなケースで習得するSQLデータの分析

pk 보는 법

977

yoonji

投稿した質問数 11

0

안녕하세요, 강의 완강하고 복습하고 있는 중에 궁금한 점이 있어 질문 남깁니다!

ga_sess 테이블에 sess_id가 pk라고 강사님에 설명을 듣고 알았습니다.

모든 테이블을 강사님 설명을 듣고 pk 가 무엇인지 알게 되었는데,

제가 새로운 테이블을 봤을 때 어떤 컬럼이 pk인지 볼 수 있는 방법이 궁금합니다!

벤다이어그램만 보고 pk가 다중컬럼인지 단일컬럼인지 이해할 수 없어 질문남깁니다!

 

 

데이터 엔지니어링 퍼포먼스 마케팅 DBMS/RDBMS sql postgresql

回答 1

0

dooleyz3525

안녕하십니까,

특정 테이블의 어떤 컬럼이 PK 인지는 DBMS 내부에 문의를 던져야 합니다.

만약 dbeaver를 사용하고 계시다면

Databases->postgres->Schemas->nw->Tables에서 원하시는 테이블을 선택하신 뒤에(가령 customers) 여기에 Constraint 나 indexes를 선택하시면 PK가 보이게 됩니다.

만약 postgresql의 psql을 사용하신다면 nw schema로 접속 하여 \d customers 를 수행하시면 테이블 속성 및 pk 정보가 나타나게 됩니다.

근데 ga 스키마의 ga_sess 테이블은 pk index가 없습니다. 그래서 위의 방법으로 하면 PK가 안보일 겁니다.

제가 강의에서 PK를 말씀 드린건 논리적인 의미로 테이블의 주인이 되는 Unique한 키값을 의미한 것입니다.

가령 Customer테이블이라면 customer_id, orders 테이블이라면 order_id 컬럼들이 pk가 될 수 있을 것입니다. PK가 어떤 컬럼이 되는지는 DB 모델 설계시 다양한 업무적인 상황을 고려해서 설정합니다. 보통은 모델링 툴을 통해서 해당 테이블을 보았을 때 모델러가 PK 컬럼을 반드시 표시합니다.

PK는 Unique하므로 아래와 같이 해당 컬럼명으로 group by count를 했을 때 1건 이상이 튀어나오면 안됩니다.

select 컬럼명, count(*) cnt from 테이블명 group by 컬럼명 having count(*) > 1;

물론 Unique하다고 PK가 되는건 아니지만, 위에서 언급 드린 사항들을 종합해서 pk를 판단하실 수 있을 것입니다.

 

감사합니다.

 

 

 

0

yoonji

궁금한 점이 속시원하게 해결되었습니다!! 감사합니다!

"주문별 고객별 연관 상품 추출 SQL로 구하기-02" 수업 질문

0

52

2

쿼리 질문있습니다!!

0

49

2

없는강의요청해도됩니까,,

0

91

2

아래와 동일한 질문에 대한 추가질문입니다

0

70

2

cnt/max로 구한 결과의 차이

0

100

2

쿼리에 대한 질문이 있습니다.

0

116

2

퍼널 질문드립니다.

0

113

1

ADSP자격증

0

282

2

특정 스키마에서 생성한 편집기의 쿼리를 판다스에 삽입하는 방법

0

161

1

백업파일 테이블 생성 오류

0

235

1

"사용자별 특정 상품 주문시 함께 가장 많이 주문된 다른 상품 추출하기"에서 조건관련..

0

161

1

Plotly을 이용해 treemap시각화시 공유사항

0

277

2

월단위 카테고리별 매출액과 주문건수 및 전체매출액 대비 비율 sql로 구하기 수업 중 질문이 있습니다.

0

248

1

with 절 질문

0

240

1

데이터 분석 SQL Fundamentals 강의 할인 문의

0

215

1

리텐션 구하는 방법 문의

0

215

1

캐글데이터 Postgresql 사용

0

356

2

mau 구할때 group by 사용안해도 count 집계함수가 왜 가능한지 모르겠습니다.

0

262

1

매출분석 1에서 partition by와 group by의 차이

0

355

1

postgres 설치 오류

0

318

1

맥 계정에서 postgres 접속 시 비밀번호 입력 실패현상

1

543

2

pandas 연계시 오류.....

0

1243

3

시각화 그래프가 안보여요

0

299

1

ntile 정규분포에 관하여 ... 향후 일을 하게 될 시

0

358

1